VB和access数据库,用Insert写,一直写不进去```

VB和access数据库,用Insert写,一直写不进去```,第1张

1、对于Access 数据库,“日期类型”字段的值最好按照 #月/日/年# 的格式书写,否则在类型转换时发生不知道的结果。你的 showdate,showtime 字段内容都需要按标准格式书写。

2、数据库中其它的字段类型(非字符型)对应的值,不可能全部用 "'" & Text & "'" 字符型数值!

所以检查你的SQL语句是必须的,写不进数据也是正常的

游标类型使用错误

rs是记录集对象,open是其方法,sql是自定义的sql语句,conn是已打开的数据库连接,A、B是记录集的游标和锁类型。

游标类型详解:

RSOPEN SQL,CONN,A,B

参数A为设定游标的类型,其取值为:

0 仅向前游标,只能向前浏览记录,不支持分页、Recordset、BookMark 只读,且当前数据记录只能向下移动

1 键集游标,其他用户对记录说做的修改将反映到记录集中,但其他用户增加或删除记录不会反映到记录集中。支持分页、Recordset、BookMark可读写,当前数据记录可自由移动

2 动态游标功能最强,但耗资源也最多。用户对记录说做的修改,增加或删除记录都将反映到记录集中。支持全功能浏览。 可读写,当前数据记录可自由移动,可看到新增记录

3 静态游标,只是数据的一个快照,用户对记录说做的修改,增加或删除记录都不会反映到记录集中。支持向前或向后移动 只读,当前数据记录可自由移动

参数B为记录集的锁定类型,其取值为:

1 锁定类型,默认的,只读,不能作任何修改 默认值,用来打开只读记录 Recordset对象以只读方式启动,无法运行AddNew、Update及Delete等方法

2 当编辑时立即锁定记录,最安全的方式 悲观锁定当数据源正在更新时,系统会暂时锁住其他用户的动作,以保持数据一致性。当记录集打开的时候将其锁定 ADLOCKPESSIMISTIC(=2) 悲观锁定 当记录集打开的时候将其锁定

3 只有在调用Update方法时才锁定记录集,而在此前的其他 *** 作仍可对当前记录进行更改、插入和删除等 乐观锁定 当数据源正在更新时,系统并不会锁住其他用户的动作,其他用户可以对数据进行增、删、改

ADLOCKOPTIMISTIC(=3) 乐观锁定 当记录集的update事件触发时锁定

4 当编辑时记录不会被锁定,而更改、插入和删除是在批处理方式下完成的 批次乐观锁定 当数据源正在更新时,其他用户必须将CursorLocation属性改为adUdeClientBatch才能对数据进行增、删、改的 *** 作。

Recordset类型:表示打开数据表的方式,有四种选择。数字0表示只读方式,且当前记录只能下移;数字1表示可读写方式,当前记录可自由上下移动,但不能及时看到别的用户建立的新记录,除非重新启动;数字2表示可读写方式,当前记录可自由移动,而且可以及时看到别的用户增加的新记录;数字3表示只读方式,但当前记录可以自由移动。一般选择2为好,除非为了禁止数据被修改。

锁定类型:这个参数指定数据库的锁定功能。因为网络上的数据库都是多用户的,很可能同时有多个用户在 *** 作数据库。为了避免错误,让同一时间只可能有一个用户修改数据,就要用锁定功能。有四种选择:数字1表示只读方式锁定,用户不能更改数据;数字2表示悲观锁定,当一个用户用rs对象开始修改数据时就锁定数据库,直到用户用rsUpdate更新记录后,才解除锁定;数字3表示乐观锁定,只有在数据写入数据库中时候才锁定,不保险,慎用!数字4表示批次乐观锁定,只有在使用rsUpdateBatch成批更新数据时候才锁定数据记录。属于很少使用的。一般地,使用悲观锁定比较安全,但是效率要低些。

常见的 *** 作对象:

rsaddnew :添加一个新记录在数据表末尾。

rsdelete :删除当前记录。

rseof :判断是否已过最后记录。

rsbof :判断是否移过首记录。

rsupdate :数据修改生效。

rs(“字段名”):当前记录指定字段的值。

从数据表中提取数据:用x=rs(“字段名”)的格式,提取数据表中当前记录指定字段的值。

向数据表中填入或修改数据:用rs(“字段名”)=数据值或变量的方式,修改当前记录指定字段的值。

这种情况你应该去检测一下你的conf里面的配置文件是否正确,第一就是数据库链接信息,第二就是db_prefix 这个配置,这个配置是数据库前缀名,默认是'tp_'把。你好好看看,如果不会继续追问我

代码应该没有问题,可以把你的$query输出一下,然后放在你的数据库里面执行,看看报什么错,如果以上程序的获取值以及sql没有问题的话,应该就是你的数据库表里面的主键id没有自增吧,检查一下,希望对你有所帮助

楼上说的对

connExecute sql

你这个连接数据库对象一没定义,二没连接到数据库

SqlConnection conn = new SqlConnection ("server=;database=userinf;uid=sa;pwd= ;");

connopen();

以上就是关于VB和access数据库,用Insert写,一直写不进去```全部的内容,包括:VB和access数据库,用Insert写,一直写不进去```、VB 6.0 数据写入不进数据库..、我写了一个thinkphp提交表单的 *** 作,但是总也写入不进数据库,是怎么回事呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9720406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存