中易网

SQL插入新数据的语法是什么?

答案:5  悬赏:20  
解决时间 2021-01-15 06:14
  • 提问者网友:遮云壑
  • 2021-01-14 15:50
SQL插入新数据的语法是什么?
最佳答案
  • 二级知识专家网友:酒者煙囻
  • 2021-01-14 16:02
一般有两种,一种是插入自己手动书写的数据,一种是来源于其他表的数据。
1、插入手动书写的数据一般语法是:
insert into 表名(字段1,字段2……) values (内容1,内容2……);
举例:
insert into sutdent(id,name,sex,class) values (1,'张三','男','一班');
2、插入的数据来源于其他表的一般语法是:
insert into 表名(字段1,字段2……) select 内容1,内容2…… from 其他表;
举例:
insert into sutdent(id,name,sex,class) select id,name,sex,class from tmp_student;
全部回答
  • 1楼网友:长青诗
  • 2021-01-14 19:35
insert into tabname(date,name) values(to_date('20140209','yyyyMMdd'),'chinese');
  • 2楼网友:一把行者刀
  • 2021-01-14 19:06
我从网上搜的,希望能帮到你
13.3 操作功能
SQL语言的操作功能包括对表中数据的增加、删除和更新操作。
13.3.1 插入
在一个表的尾部追加数据时,要用到插入功能,SQL的插入命令包括以下3种格式:
格式:
INSERT INTO 〈表名〉 [(〈字段名1〉 [,〈字段名2〉,…])]
VALUES(〈表达式1〉)[, 〈表达式2〉,…])

INSERT INTO 〈表名〉 FROM ARRAY 〈数组名〉
INSERT INTO 〈表名〉 FROM MEMVAR
功能:3种格式都是在指定的表的表尾添加一条新记录。
13.3.1 插入
说明:
(1)第1种格式其值为VALUES后面的表达式的值。当需要插入表中所有字段的数据时,表名后面的字段名可以缺省,但插入数据的格式必须与表的结构完成吻合;若只需要插入表中某些字段的数据,就需要列出插入数据的字段,当然相应表达式的数据位置会与之对应。
(2)第2种格式新记录的值是指定的数组中各元素的数据。数组中各元素与表中各字段顺序对应。如果数组中元素的数据类型与其对应的字段类型不一致,则新记录对应的字段为空值;如果表中字段个数大于数组元素的个数,则多的字段为空值。
(3)第3种格式新记录的值是指定的内存变量的值。添加的新记录的值是与指定表各字段名同名的内存变量的值,如果同名的内存变量不存在,则相应的字段为空。
Visual FoxPro支持两种SQL插入命令的格式,第一种格式是标准格式,第二种格式是Visual FoxPro的特殊格式。
13.3.1 插入
【13.42】在订购单表中,插入元组("E7","S4","OR01",09/25/03)。
INSERT INTO 订购单(职工号,供应商号,订购单号,订购日期,总金额)
VALUES("E7","S4","OR01",{^2003-09-25},1200)
其中“{^2003-09-25}”是日期型字段订购日期的值。
图13.48
13.3.1 插入
假设供应商尚未确定,那么只能先插入职工号和订购单号两个属性的值,这时可用如下命令:
INSERT INTO 订购单(职工号,订购单号) VALUES("E7","OR01")
这时另外三个属性的值为空。
13.3.1 插入
下面用一组命令来说明INSERT INTO…FROM ARRAY 的使用方式:
USE订购单 &&打开订购单
SCATTER to A1 &&将当前记录读到数组A1
COPY STRUCTURE TO A2 &&拷贝订购单表的结构到A2
INSERT INTO A2 FROM ARRAY A1 &&从数组A1插入一条记录到A2
SELECt A2 &&切换到A2的工作区
BROWSE &&用BROWSE命令验证插入的结果
USE &&关闭A2.dbf文件
DELETE FILE A2.dbf &&删除A2.dbf文件
13.3.1 插入
在一个表的尾部追加数据时,要用到插入功能,SQL的插入命令包括以下3种格式:
格式:
INSERT INTO 〈表名〉 [(〈字段名1〉 [,〈字段名2〉,…])]
VALUES(〈表达式1〉)[, 〈表达式2〉,…])

INSERT INTO 〈表名〉 FROM ARRAY 〈数组名〉
INSERT INTO 〈表名〉 FROM MEMVAR
功能:3种格式都是在指定的表的表尾添加一条新记录。
13.3.1 插入
说明:
(1)第1种格式其值为VALUES后面的表达式的值。当需要插入表中所有字段的数据时,表名后面的字段名可以缺省,但插入数据的格式必须与表的结构完成吻合;若只需要插入表中某些字段的数据,就需要列出插入数据的字段,当然相应表达式的数据位置会与之对应。
(2)第2种格式新记录的值是指定的数组中各元素的数据。数组中各元素与表中各字段顺序对应。如果数组中元素的数据类型与其对应的字段类型不一致,则新记录对应的字段为空值;如果表中字段个数大于数组元素的个数,则多的字段为空值。
(3)第3种格式新记录的值是指定的内存变量的值。添加的新记录的值是与指定表各字段名同名的内存变量的值,如果同名的内存变量不存在,则相应的字段为空。
Visual FoxPro支持两种SQL插入命令的格式,第一种格式是标准格式,第二种格式是Visual FoxPro的特殊格式。
13.3.1 插入
【13.42】在订购单表中,插入元组("E7","S4","OR01",09/25/03)。命令执行结果如图13.48所示。
INSERT INTO 订购单(职工号,供应商号,订购单号,订购日期,总金额)
VALUES("E7","S4","OR01",{^2003-09-25},1200)
其中“{^2003-09-25}”是日期型字段订购日期的值。
图13.48
13.3.1 插入
假设供应商尚未确定,那么只能先插入职工号和订购单号两个属性的值,这时可用如下命令:
INSERT INTO 订购单(职工号,订购单号) VALUES("E7","OR01")
这时另外三个属性的值为空。
13.3.1 插入
下面用一组命令来说明INSERT INTO…FROM ARRAY 的使用方式:
USE订购单 &&打开订购单
SCATTER to A1 &&将当前记录读到数组A1
COPY STRUCTURE TO A2 &&拷贝订购单表的结构到A2
INSERT INTO A2 FROM ARRAY A1 &&从数组A1插入一条记录到A2
SELECt A2 &&切换到A2的工作区
BROWSE &&用BROWSE命令验证插入的结果
USE &&关闭A2.dbf文件
DELETE FILE A2.dbf &&删除A2.dbf文件
13.3.1 插入
用下面一组命令来说明INSERT INTO…FROM MEMVAR的使用方式:
USE订购单 &&打开订购单
SCATTER M1 &&将当前记录读到内存变量M1中
COPY STRUCTURE TO A2 &&拷贝订购单表的结构到A2
INSETR INTO A2 FROM M1 &&从内存变量插入一条记录到A2
SELECt A2 &&切换到A2的工作区
BROWSE &&用BROWSE命令验证插入的结果
USE &&关闭A2.dbf文件
DELETE FILE A2.dbf &&删除A2.dbf文件
13.3.1 插入
说明:当一个表定义了主索引或候选索引后,由于相应的字段具有关键字的特性,即不能为空,所以只能用此命令插入记?肌oxPro以前的插入命令(INSERT或APPEND)是先插入一条空记录,然后再输入各字段的值,由于关键字字段不允许为空,所以使用以前的方法就不能成功地插入记录。
13.3.2 更新
更新是指对存储在表中的记录进行修改。
格式:
UPDATE [ 〈数据库〉! ] 〈表名〉
SET 〈列名1〉=〈表达式1〉 [, 〈列名2〉=〈表达式2〉 …]
[WHERe 〈条件表达式1〉 [AND | OR 〈条件表达式2〉 …]]
13.3.2 更新
说明:
(1)[〈数据库〉! ]〈表名〉:指定要更新数据的记录所在的表名及该表所在的数据库名。
(2)SET 〈列名〉=〈表达式〉:指定被更新的字段及该字段的新值。如果省略WHERe子句,则该字段每一条都用同样的值更新。
(3)WHERe 〈条件表达式〉:指明将要更新数据的记录。即更新表中符合条件表达式的记录,并且一次可以更新多个字段;如果不使用WHERe子句,则更新全部记录。
13.3.2 更新
【13.43】在职工表中,给WH1仓库的职工提高10%的工资。命令执行结果如图13.49所示。
UPDATE 职工 SET 工资=工资*1.10 WHERe 仓库号="WH1"
例如: 将所有学生的年龄增加1岁:
UPDATE 学生 SET 年龄=年龄+1
13.3.3 删除
用SQL语言可以删除数据表中的记录。
格式:
DELETE FROM [〈数据库!〉]〈表名〉
[WHERe 〈条件表达式1〉 [AND | OR 〈条件表达式2〉 …]]
说明:
(1)[〈数据库!〉]〈表名〉:指定加删除标记的表名及该表所在的数据库名,用“!”分割表名和数据库名,数据库名为可选项。
(2)WHERe选项:指明只对满足条件的记录加删除标记。如果不使用WHERe子句,则删除该表中的全部记录。
(3)上述删除只是加删除标记,并没有从物理上删除,只有执行了PACK命令,有删除标记的记录才能真正从表中删除。删除标记可以用REACLL命令取消。
13.3.3 删除
【13.44】删除仓库表中仓库号值是WH2的记录。
DELETe FROM 仓库 WHERe仓库号="WH2"
说明:SQL DELETE命令同样是逻辑删除记录,如果要物理删除记录需要继续使用PACK命令。
13.3.4 表的删除
随着数据库应用的变化,往往有些表连同它的数据不再需要了,这时可以删除这些表,以节省存储空间。
格式:DROP TABLE 〈表名〉
说明:DROP TABLE直接从磁盘上删除表名所对应的DBF文件。如果表名是数据库中的表,并且相应的数据库是当前数据库,则从数据库中删除表;否则虽然从磁盘上删除了DBF文件,但是记录在数据库DBC文件中的信息却没有删除,此后会出现错误提示。所以要删除数据库中的表时,最好应使数据库是当前打开的数据库,在数据库中进行操作。
  • 3楼网友:煞尾
  • 2021-01-14 17:57

没看明白你具体想干什么,,,
基本的insert语句
是insert into 表(date,name)
values ('20140209','chinese')
或者insert into 表(date,name)
select '20140209','chinese'
  • 4楼网友:渊鱼
  • 2021-01-14 16:32
insert into tabname (date,name) values(20140209,'chinese');
如果你的表中只有这两个字段就可以直接insert into tabname values(20140209,'chinese');就ok了
如果还有其他字段就得加上。追问你的方法成功了,但是为什么name里的数据会变成乱码呢追答MySQL 必然会出现乱码,因为MySQL默认是用iso-8859编码的 你可以在Init文件中修改字符编码。具体怎么操作,自己百度一下 好吧 很容易解决的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息