在SQL Server里面怎么插入记录?

在SQL Server里面怎么插入记录?,第1张

Private Sub 入库_click()

'默认你的后面的textbox的名称就是前面的名称

'这里的数据类型可能要转换,比如价格可能要转换成double(CDbl()),购买日期转行成日期时间型(CDate())

'假设你的数据表是aa,字段名和界面显示是一样的

Dim Rs As ADODB.Recordset

'在插入前建议你在aa表里查查这条记录是否已经存在,如果已经存在则给出提示(查询条件看你怎么设置的主键了)

Rs = objADO.GetRs("insert into aa (书名,定价,作者,图书类别,出版社,介质,购买日期,内容简介) values (" &书名.Text &"," &vbCrLf &_

"定价.text &", " &作者.text &", " &图书类别.text &", " &出版社.text &", " &介质.text &", " &购买日期.text &", " &内容简介.text &")

'这里如果表aa的字段多于界面显示的也没关系,只会给你aa后面括号里的字段赋值,这里后面values的顺序必须和前面的对应

'正确插入后建议给个提示,同时看看有没有必要把界面的所有值清空(图书类别.text = "")

'这里的objADO建议这么定义Public objADO As SqlServer,有别的查询也可以直接用,你自己怎么定义的就换成你自己的

'GetRs的定义在下面,你也可能是dim strsql as string,然后strsql = (上面的插入语句),然后用下面Rs.Open strSql, Conn, adOpenStatic, adLockReadOnly的方法,都行的,就看你自己怎么写的了

End Sub

Public Function GetRs(ByVal strSql As String) As ADODB.Recordset'通过执行SQL语句返回记录集

Dim Rs As ADODB.Recordset

On Error GoTo Err0

If Not OpenDB Then

Exit Function

End If

Set Rs = New ADODB.Recordset

Rs.CursorLocation = adUseClient '使用本地(客户端)游标,这样Rs.RecordCount属性才能正确返回记录集行数

DoEvents

Rs.Open strSql, Conn, adOpenStatic, adLockReadOnly

Set GetRs = Rs

Exit Function

Err0:

If InStr(1, Err.Description, "通讯链接失败") >0 Then

Set Conn = New ADODB.Connection

LocalStat = "断开" '设置本地数据库连接状态

End If

MsgBox Err.Description

End Function

insert into 表名(字段名逗号隔开(不用写自动增长那列)) values(对应的值也是逗号隔开)

要是每个字段都要插入那就可以写成

insert into 表名 values(顺序写值,每个字段都要写(不包括自动增长列))

into可以省略不写

insert into语句可以有两种编写形式:

1、无需指定要插入数据的列名,只需提供被插入的值即可:

insert into table_name

values (value1,value2,value3,...)

2、需要指定列名及被插入的值:

insert into table_name (column1,column2,column3,...)

values (value1,value2,value3,...)

扩展资料

SQL常用语句

查所有数据库 show databases

创建数据库 create database db1

查看数据库 show create database db1

创建数据库指定字符集 create database db1 character set utf8/gbk

删除数据库 drop database db1

使用数据库 use db1

创建表 create table t1(id int,name varchar(10))

查看所有表 show tables

查看单个表属性 show create table t1

查看表字段 desc t1

创建表指定引擎和字符集 create table t1(id int,name varchar(10)) engine=myisam/innodb charset=utf8/gbk

1、直接添加

insert into 表名 values (.......)

2、插入记录来自另外的表

insert into 表名1 select * from 表名 2 where .....

3、还有一种属于表不存在,同时建表及插入数据

select 字段1,字段2... into 新表 from 旧表


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

原文地址: http://outofmemory.cn/bake/11531115.html

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

发表评论

登录后才能评论

评论列表(0条)

保存