sql语句

阅读 / 问答 / 标签

如何用Sql语句添加字段?

语法ALTER TABLE 表 {ADD ADD{COLUMN 字段类型 [ (字长)] [NOT NULL] [CONSTRAINT 索引 ] |<br/> ALTER COLUMN 字段类型 [(字长)] |<br/> CONSTRAINT 多重字段索引 } | DROP DROP{COLUMN 字段 I CONSTRAINT 索引名 } }ALTER TABLE 语句分为以下几个部分:部分 说明 table 欲修改的表之名称。 field 欲在表内增加或删除的字段的名称。或表内欲被替换的字段名称。 type 字段的数据类型。 size 字段的字符长度 (文本及二进制字段)。 index 字段索引。欲了解更多有关如何构造本索引的信息,请看 CONSTRAINT子句。 multifieldindex 欲增加至表 中的多重字段索引的定义。欲了解更多有关如何构造本索引的信息,请看 CONSTRAINT子句。 indexname 欲删除的多重字段索引的名称。 说明使用 ALTER TABLE 语句,可用多种不同方法更改当前已存在的表:你可以: 使用 ADD COLUMN 在表中添加新的字段。需要指定字段名、数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句在员工表中增加一 25 个字符的、名为 Notes 的文本字段: ALTER TABLE Employees ADD COLUMN Notes TEXT(25) 也可以定义此字段的索引。关于单一字段索引的详细信息,请参阅CONSTRAINT 子句主题。 如果对一字段指定 NOT NULL,则在这字段中添加的新记录必须有有效的数据。 使用ALTER COLUMN改变一个当前字段的数据类型,需要指定字段名、新数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句把雇员表中一个字段的数据类型, 被称为ZipCode(最初被定义为整数),改变成一个10字符文本字段: ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10) 使用 ADD CONSTRAINT 添加多重字段索引。关于多重字段索引的详细信息,请参阅 CONSTRAINT 子句主题。 使用 DROP COLUMN 删除字段。只要指定欲删除的字段名即可。 使用 DROP CONSTRAINT 删除多重字段索引。只要在 CONSTRAINT 保留字后面指定索引名即可。 --------------------------------------------------------------------------------注意 不能同时添加或删除一个以上的字段或索引。 你可以使用 CREATE INDEX 语句在一个表中增加一个单字段或多重字段,你还可以使用 ALTER TABLE 或 DROP 语句删除一个由ALTER TABLE或CREATE INDEX建立的索引。 可以在单一字段上使用 NOT NULL,或在用于单一字段或多重字段(名为 CONSTRAINT) 的 CONSTRAINT 子句中使用 NOT NULL。但是,一个字段只能使用一次 NOT NULL 限制。尝试多次应用此限制将导致运行错误。

在C#里面如何通过sql语句向Oracle资料库的表里面新增一个栏位?

在C#里面如何通过sql语句向Oracle资料库的表里面新增一个栏位? 看你的问题你应该知道如何连线资料库和互动,只是不知道语句是吧 alte table A add TEL_number char(10) 用这个 sql资料库表里面如何新增一个使用者名称的栏位? ?我不知道你问的问题是不是怎么建表。 栏位直接新增不就行了? 在资料表中新增一个栏位的SQL语句怎么写 通用式: alter table [表名] add [栏位名] 栏位属性 default 预设值 default 是可选引数 增加栏位: alter table [表名] add 栏位名 *** allint default 0 增加数字栏位,整型,预设值为0 alter table [表名] add 栏位名 int default 0 增加数字栏位,长整型,预设值为0 alter table [表名] add 栏位名 single default 0 增加数字栏位,单精度型,预设值为0 alter table [表名] add 栏位名 double default 0 增加数字栏位,双精度型,预设值为0 alter table [表名] add 栏位名 Tinyint default 0 增加数字栏位,位元组型,预设值为0 alter table [表名] add 栏位名 text [null] 增加备注型栏位,[null]可选引数 alter table [表名] add 栏位名 memo [null] 增加备注型栏位,[null]可选引数 alter table [表名] add 栏位名 varchar(N) [null] 增加变长文字型栏位大小为N(1~255) alter table [表名] add 栏位名 char [null] 增加定长文字型栏位大小固定为255 alter table [表名] add 栏位名 Datetime default 函式增加日期型栏位,其中函式可以是now(),date()等,表示预设值 (上面都是最常用的,还有其他的属性,可以参考下面的资料型别描述) 删除栏位: alter table [表名] drop 栏位名 修改变长文字型栏位的大小:alter table [表名] alter 栏位名 varchar(N) 删除表: drop table [表名] 建立表: sql="CREATE TABLE [表名] ([栏位1,并设定为主键] int IDENTITY (1, 1) NOT NULL CONSTRAINT PrimaryKey PRIMARY KEY,"& "[栏位2] varchar(50),"& "[栏位3] single default 0,"& "[栏位4] varchar(100) null,"& "[栏位5] *** allint default 0,"& "[栏位6] int default 0,"& "[栏位7] date default date(),"& "[栏位8] int default 1)" conn.execute sql 有null 的表示栏位允许零长 alter table 表名 add column 列名 型别(长度) 比如 alter table 学生表 add column 名字 varchar(60) ; 想加在username栏位后面可以在后面在加上 after username,否则就是加在最后面的位置了。 alter table `0902` add column 名字 varchar(60) after username Alter table XX add column 栏位名 栏位型别 Alter table A add fieldname varchar(10) Xutils资料库模组怎么往表里新新增一个栏位呢 新增表字段(如果一次新增多栏位后面不加bit) ALTER TABLE 表名 ADD 栏位名 bit 例如: alter table main add 年龄char(3),姓名varchar(8),性别char(2) 将资料库A表里面的name栏位 用B表里面的name替换 SQl语句怎么写 update a set a.name = b.name from a,b where a.[关联栏位] = b.[关联栏位]

sql语句给表加新字段,不知道语法,怎么办?

添加完整字段包括字段名、数据类型、完整性约束。添加字段的语法格式如下:语法结构:alter table 表名 add 新字段 数据类型 约束条件 first | after 已存在的字段名;(1) 添加无完整性约束条件的字段语法结构:alter table 表名add 新字段 数据类型;案例:在表tb_department1中添加一个完整性约束的int字段managerId(部门经理编号),SQL语句如下:命令语句:alter table tb_department1 add managerId int(10);执行结果如下:(2) 添加有完整性约束的条件语法结构:alter table 表名 add 新字段 数据类型 约束条件;案例:在数据表tb_department1添加一个不能为空的varchar(12)类型字段managerName的,使用的SQL语句如下:命令语句:alter table tb_department1 add managerName varchar(28) not null;执行结果如下:(3) 在表的第一列添加一个字段语法结构:alter table 表名 add 字段名 数据类型 first;案例:在数据表tb_department1第一列添加一个int(11)类型字段telephone,使用的SQL语句如下:命令语句:alter table tb_department1 add telephone int first;执行结果如下:(4) 在表的指定列之后添加一个字段语法结构:alter table 表名 add 字段名 数据类型 after 已存在字段名;案例:在数据表tb_department1中name列后添加一个int型字段column1,指定部门的名称唯一,使用的SQL语句如下:命令语句:alter table tb_department1 add column1 int after name;执行结果如下:

如何用Sql语句添加字段?

语法ALTER TABLE 表 {ADD ADD{COLUMN 字段类型 [ (字长)] [NOT NULL] [CONSTRAINT 索引 ] |ALTER COLUMN 字段类型 [(字长)] |CONSTRAINT 多重字段索引 } |DROP DROP{COLUMN 字段 I CONSTRAINT 索引名 } }ALTER TABLE 语句分为以下几个部分:部分 说明table 欲修改的表之名称。field 欲在表内增加或删除的字段的名称。或表内欲被替换的字段名称。type 字段的数据类型。size 字段的字符长度 (文本及二进制字段)。indexname 欲删除的多重字段索引的名称。说明使用 ALTER TABLE 语句,可用多种不同方法更改当前已存在的表:你可以:使用 ADD COLUMN 在表中添加新的字段。需要指定字段名、数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句在员工表中增加一 25 个字符的、名为 Notes 的文本字段:ALTER TABLE Employees ADD COLUMN Notes TEXT(25)也可以定义此字段的索引。关于单一字段索引的详细信息,请参阅CONSTRAINT 子句主题。如果对一字段指定 NOT NULL,则在这字段中添加的新记录必须有有效的数据。使用ALTER COLUMN改变一个当前字段的数据类型,需要指定字段名、新数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句把雇员表中一个字段的数据类型, 被称为ZipCode(最初被定义为整数),改变成一个10字符文本字段:ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10)使用 ADD CONSTRAINT 添加多重字段索引。关于多重字段索引的详细信息,请参阅 CONSTRAINT 子句主题。使用 DROP COLUMN 删除字段。只要指定欲删除的字段名即可。使用 DROP CONSTRAINT 删除多重字段索引。只要在 CONSTRAINT 保留字后面指定索引名即可。--------------------------------------------------------------------------------注意不能同时添加或删除一个以上的字段或索引。你可以使用 CREATE INDEX 语句在一个表中增加一个单字段或多重字段,你还可以使用 ALTER TABLE 或 DROP 语句删除一个由ALTER TABLE或CREATE INDEX建立的索引。可以在单一字段上使用 NOT NULL,或在用于单一字段或多重字段(名为 CONSTRAINT) 的 CONSTRAINT 子句中使用 NOT NULL。但是,一个字段只能使用一次 NOT NULL 限制。尝试多次应用此限制将导致运行错误。

SQL语句ALTERTABLE实现以下的哪类功能(  )。

【答案】:DSQL语句按照功能分为四类:数据定义CREATE、DROP、ALTER;数据操纵INSERT、UDPATE、DELETE:数据查询SELECT;数据控制GRANT、REVOKE。

如何用Sql语句添加字段?

语法ALTERTABLE表{ADDADD{COLUMN字段类型[(字长)][NOTNULL][CONSTRAINT索引]|ALTERCOLUMN字段类型[(字长)]|CONSTRAINT多重字段索引}|DROPDROP{COLUMN字段ICONSTRAINT索引名}}ALTERTABLE语句分为以下几个部分:部分说明table欲修改的表之名称。field欲在表内增加或删除的字段的名称。或表内欲被替换的字段名称。type字段的数据类型。size字段的字符长度(文本及二进制字段)。index字段索引。欲了解更多有关如何构造本索引的信息,请看CONSTRAINT子句。multifieldindex欲增加至表中的多重字段索引的定义。欲了解更多有关如何构造本索引的信息,请看CONSTRAINT子句。indexname欲删除的多重字段索引的名称。说明使用ALTERTABLE语句,可用多种不同方法更改当前已存在的表:你可以:使用ADDCOLUMN在表中添加新的字段。需要指定字段名、数据类型、还可以(对文本和二进制字段)指定长度。例如,下列语句在员工表中增加一25个字符的、名为Notes的文本字段:ALTERTABLEEmployeesADDCOLUMNNotesTEXT(25)也可以定义此字段的索引。关于单一字段索引的详细信息,请参阅CONSTRAINT子句主题。如果对一字段指定NOTNULL,则在这字段中添加的新记录必须有有效的数据。使用ALTERCOLUMN改变一个当前字段的数据类型,需要指定字段名、新数据类型、还可以(对文本和二进制字段)指定长度。例如,下列语句把雇员表中一个字段的数据类型,被称为ZipCode(最初被定义为整数),改变成一个10字符文本字段:ALTERTABLEEmployeesALTERCOLUMNZipCodeTEXT(10)使用ADDCONSTRAINT添加多重字段索引。关于多重字段索引的详细信息,请参阅CONSTRAINT子句主题。使用DROPCOLUMN删除字段。只要指定欲删除的字段名即可。使用DROPCONSTRAINT删除多重字段索引。只要在CONSTRAINT保留字后面指定索引名即可。--------------------------------------------------------------------------------注意不能同时添加或删除一个以上的字段或索引。你可以使用CREATEINDEX语句在一个表中增加一个单字段或多重字段,你还可以使用ALTERTABLE或DROP语句删除一个由ALTERTABLE或CREATEINDEX建立的索引。可以在单一字段上使用NOTNULL,或在用于单一字段或多重字段(名为CONSTRAINT)的CONSTRAINT子句中使用NOTNULL。但是,一个字段只能使用一次NOTNULL限制。尝试多次应用此限制将导致运行错误。

在数据表中添加一个字段的SQL语句怎么写

对的啊,有什么问题吗?comment on column sc_bd_yjjs.name is "姓名";SELECT * FROM USER_COL_COMMENTS WHERE TABLE_NAME=upper("sc_bd_yjjs");

BINARY在sql语句中的作用

BINARY 运算符将紧随其后的 string 转换为 二进制字符串。 主要用来强制进行按字节进行比较(byte by byte),字节而不是字符的字符。这使得字符串比较 是区分大小写 的, 不管原始的列定义是否是 BINARY 或者 BLOB。BINARY 也 对字符串末尾的空格敏感 。 (sql默认是不区分大小写的) 例如:

用的ssm框架,如何在eclipse的控制台中输出项目运行中的sql语句。

在你执行sql之后打印你执行的sql 不就可以了吗例如:String sql="select * from table";System.out.println(sql);这样不就把你执行的sql打印到控制台了吗mybatis的话 就得配置log4j在mybatis-config.xml 文件中 加上如下代码<configuration> <properties> <property name="dialect" value="mysql" /> </properties> <settings> <setting name="logImpl" value="LOG4J" /> </settings> </configuration>

在Oracle中,commit这个关键字有什么作用?在sql语句中,运行程序结果没什么变化啊

Oracle数据库里面有DCL语句(Data Control Language),一共有四个关键字,commit、rollback、grant和revoke。它们执行的时候,你都不会有什么感觉。commit在数据库编程的时候很常用,当你执行DML操作时,数据库并不会立刻修改表中数据,这时你需要commit,数据库中的数据就立刻修改了,如果在没有commit之前,就算你把整个表中数据都删了,如果rollback的话,数据依然能够还原。听我这么说,你或许感觉commit没什么用,其实不然。当你同时执行两条或两条以上的sql语句时,问题就出现了。举一个例子,你去银行转账,你转的时候银行的数据库会update你银行账户里面的数据,同时对另一个人得账户也进行update操作。这两个程序都必须全部正确执行,才能commit,否则rollback。如果只是完成一条,要么你郁闷,要么银行郁闷,第一种情况是,你的账户的钱没少,转账人得账户上的钱多了,银行郁闷了。第二种情况你的银行账户的钱少了,他的却没多,你就好郁闷了。Oracle好好学吧!sql不难,plsql努努力也能熬过去,等到优化那,哎!DBA不是那么好当的。还有就是commit算是显式提交,还有隐式提交,并不是,不commit的话,你的全部努力就都白费了。

sql语句中什么时候用commit?

事务里的操作执行成功的时候提交。否则 执行 Rollback

sql语句中什么时候用commit?

commit是提交的意思(oracle),当你写完一条sql语句后,点击执行,看到数据变化,或者修改,但是在数据中这些数据是没有变化的,如果你要修改数据库中的数据,必须在sql语句会面加一条语句commit。1、sql 语句:是对数据库进行操作的一种语言。结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。2、 简单基本的sql语句更新:update table1 set field1=value1 where 范围查找:select * from table1 where field1 like "%value1%" (所有包含‘value1"这个模式的字符串)排序:select * from table1 order by field1,field2 [desc]求和:select sum(field1) as sumvalue from table1平均:select avg(field1) as avgvalue from table1最大:select max(field1) as maxvalue from table1

sql语句中什么时候用commit?

事务里的操作执行成功的时候提交。否则 执行 Rollback

mysql如何用sql语句添加账号

词语解释: grant :授予,授权 privileges:特权 *.*(数据库名.表名):所有数据库下的所有表mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令";权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用"%"表示从任何地址连接。‘连接口令"不能为空,否则创建失败。例如:mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by ‘123′;给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by ‘123′;给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。mysql>grant all privileges on *.* to joe@10.163.225.87 identified by ‘123′;给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。mysql>grant all privileges on *.* to joe@localhost identified by ‘123′;给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。mysql>grant all privileges on *.* to joe@"%" identified by ‘123′;给用户joe分配在任何主机上均可对所有数据库的所有表进行所有操作的权限,并设定口令为123。mysql>GRANT ALL PRIVILEGES ON *.* TO "monty"@"localhost" IDENTIFIED BY "some_pass" WITH GRANT OPTION;给用户直接分配grant权限;添加完用户后要: mysql> flush privileges;本文转自: http://hi.baidu.com/tonyty163/blog/item/1f06e509a6021f9c0a7b8273.html

什么sql语句可以fallback

希望能帮到你: create PROCEDURE proc1 AS BEGIN DECLARE @STR VARCHAR(8000) SELECT @STR = ISNULL(@STR,"")+["字段名"]+";" FROM 表名 insert into newTable("你要插入的字段名") values(@STR) --newTable 是另外一张表

统计出男生人数,平均年龄,女生人数,平均年龄.sql语句

数据库呢,贴出来啊

关于PB中用SQL语句in的用法,该怎么解决

If...Then...Else 语句根据表达式的值有条件地执行一组语句。语法If condition Then [statements][Else elsestatements]或者,可以使用块形式的语法:If condition Then[statements][ElseIf condition-n Then[elseifstatements] ...[Else[elsestatements]]End IfIf...Then...Else 语句的语法具有以下几个部分:部分 描述 condition 必要参数。一个或多个具有下面两种类型的表达式:数值表达式或字符串表达式,其运算结果为 True 或 False。如果 condition 为 Null,则 condition 会视为 False。TypeOf objectname Is objecttype 形式的表达式。其中的 objectname 是任何对象的引用,而 objecttype 则是任何有效的对象类型。如果 objectname 是 objecttype 所指定的一种对象类型,则表达式为 True,否则为False。 statements 在块形式中是可选参数;但是在单行形式中,且没有 Else 子句时,则为必要参数。一条或多条以冒号分开的语句,它们在 condition 为 True 时执行。 condition-n 可选参数。与 condition 同。 elseifstatements 可选参数。一条或多条语句,它们在相关的 condition-n 为 True 时执行。 elsestatements 可选参数。一条或多条语句,它们在前面的 condition 或 condition-n 都不为 True 时执行。

sql语句中的information_schema.COLUMNS 是什么意思呢

information_schema.COLUMNS 这东西的意思是 information_schema库的cloumns表where后面是该表的过滤信息,用来具体定位的。

怎样在sql语句中oracle调用存储过程

我试验过了,就是exec 存储过程名或者execute 存储过程名(参数),请你在仔细确认一下,你的存储过程名写没写对呀,或者你没有进入sqlplus中?---- 以上,希望对你能有帮助。

一条select中有多个count如何写成一条sql语句?

如下,满意请采纳:x0dx0a x0dx0aselect 机场名称,count(航班号) 总航班数,sum(case when 起飞状态="已起飞" then 1 else 0 end) 已起飞的航班数x0dx0afrom tab1x0dx0agroup by 机场名称

sql语句怎样获得查询计数

你的conut该改为count吧!

SQL语句查询统计(sql语句查询统计)

一、统计行数SELECTCOUNT(*)FROMTABLE_NAMEWHERE条件二、统计某个字段非空值的个数(只有该字段值不为NULL才被计数)SELECTCOUNT(FIELD_NAME)FROMTABLE_NAMEWHERE条件三、统计某个字段不同值的个数(重复值只被计数一次)SELECTCOUNT(DISTINCTFIELD_NAME)FROMTABLE_NAMEWHERE条件其中“WHERE条件”不是必须的,建议你每个都自己尝试几次,找好感觉。祝你好运!

求一sql语句,按用户消费总金额排列

SELECT A.name,SUM(B. xfje) AS totalxfje FROM book AS A ,xfjl AS B WHERE A.id = B.khid GROUP BY B.khid ORDER BY totalxfje DESC试试看行不行

【写SQL语句】按照用户统计对应订单数和订单总金额?

SELECT UID as 用户 ,COUNT(ORDER_SN)as 订单总数,SUM(TOTAL)as 合计总金额 FROM 订单表 group by uid

sql语句中的@UserName = UserName什么意思???

@UserName = UserName@UserName变量名UserName的变量值赋给@UserName

SQL语句DO While !EOF()是什么意思?

简而言之就是没有到资料结尾eof是End Of File的缩写

请教sql语句中not like的用法

Select * from table where filed not like "%ABCD%"

SQL语句的问题,当一个字段为空时,用一个字段替换它

首先确定两个表靠什么关联的?有什么字段关联,譬如inventory的id==cinvcode的id注意一个id对应一个产品名,否则失败你最好把表结构给一下,这样没法给你意见updateinventorysetinventory.cinvname=bianma.产品名称whereinventory.id=bianma.id运行前备份一下表,我怕出错,出错再给你调试

sql语句left的用法是什么?

楼主问的因该是left函数吧?其实很简单,一个字符串"12345"select left("12345",2)结果"12"希望对楼主有所帮助

sql语句 left的 用法

select from t1 left join t2 on 连接条件连接条件比如 t1.fieldA=t2.fieldb

SQL语句 包含怎么写

select * from Table where ID like "%,1,%" or ID like "1,%" or ID like "%,1"测试可行

SQL语句需要指定PARTITION吗

不用的,你直接查询它会自动把所有分区符合条件的结果都查询出来的

sql语句 decimal(18,0)什么意思

1、sql语句 decimal(18,0)的意思是:可储存的最大十进位数总数为18,小数位数为0。2、Decimal(n,m)的含义如下:n表示可储存的最大十进位数总数,小数点左右两侧都包括在内,最小的有效位数是 1 ,最大的有效位数是 38 。m表示小数点右侧所能储存的最大十进位数。m和n之间要满足0≤m≤n的关系,只有在指定了有效位数时,才能指定小数位数。Decimal为SQL Server、MySql等数据库的一种数据类型,不属于浮点数类型,可以在定义时划定整数部分以及小数部分的位数。Decimal(n,m)表示数值中共有n位数,其中整数(n-m)位,小数m位。例:decimal(10,6),数值中共有10位数,其中整数占4位,小数占6位。

sql语句 decimal(18,0)什么意思

decimal是数据类型.18位.没有小数位.

sql语句 decimal(18,0)什么意思

1、sql语句 decimal(18,0)的意思是:可储存的最大十进位数总数为18,小数位数为0。2、Decimal(n,m)的含义如下:n表示可储存的最大十进位数总数,小数点左右两侧都包括在内,最小的有效位数是 1 ,最大的有效位数是 38 。m表示小数点右侧所能储存的最大十进位数。m和n之间要满足0≤m≤n的关系,只有在指定了有效位数时,才能指定小数位数。Decimal为SQL Server、MySql等数据库的一种数据类型,不属于浮点数类型,可以在定义时划定整数部分以及小数部分的位数。Decimal(n,m)表示数值中共有n位数,其中整数(n-m)位,小数m位。例:decimal(10,6),数值中共有10位数,其中整数占4位,小数占6位。

嵌入式sql语句怎么才能在C语言运行,比如这个C程序,需要什么头文件之类的吗?

头文件#include <stdio.h>#include <stdlib.h>用文本编辑器编写以上程序,将后缀名改为.sqc,用nsqlprep.exe将.sqc文件编译成.c文件

截取一个字符串的最后6位sql语句怎么写?

使用right函数。select right("123456789",6) as cc-----------result"456789"不过移植起来会有点麻烦

sql语句 怎么从一张表中查询数据插入到另一张表中

以下:1、insertintoA([id],ids,[name],type,time)select[id],null,[name],"dd",getdate()fromBwheretype="dd"2、DECLARE@numint,@iint;SET@i=0;SET@num=(select字段from表1where条件);WHILE@i<@numbeginset@i=@i+1;insertINTO表2(字段)SELECT字段from表1where条件;end;3、insertintob(column1,datecolumn)selectcolumn1,getdate()froma

怎样用sql语句,在oracle中将一个表中查出来的字段插入另外一个表中的相应字段

LZ的意思是查出b_cust表中的b_cust.idcardno=sis.cardno的所有记录中的outid插入到sis表中对应的sid列吧用游标来做试试:createorreplaceprocedurepro_testascursorcur_testisselectoutid,idcardnofromb_cust,siswhereidcardno=cardno;beginforIincur_testloopupdatesissetsid=I.outidwherecardno=I.idcardno;endloop;end;/execpro_test;楼下的哥们我知道这是update操作,确实是我表述不清楚了。。。汗。。

求教sql语句 update from语法的原理

updateatablesetxcolumns="xx"whereycolumnsin(selectycolumnsfromb)

两表关联查询SQL语句的,要怎么写?

select U.userId,U.companyId,U.userName,U.userAge,U.address from company C ,users U where U.companyId=C.companyId and C.company=1; 这句是查询腾讯所有用户的信息!

sql语句之三表联查,优化?

SELECT distinct ypi.pi_idFROM ymx_order AS yohINNER JOIN ymx_combination AS ypc ON ypc.pco_skuuppdate = yoh.home_backk INNER JOIN ymx_product_info AS ypi ON ypc.pi_id = ypi.pi_idwhere home_yunstate="已采购" 具体还是要看数据量定的.

repository.save怎么实现的sql语句

repository.save怎么实现的sql语句Oracle 刚刚写过的内容实际是写在临时 sql 文件中。所以在 SQLPlus中你可以save c:a.sql 就可以把最近的命令保存在 c:下面的 a.sql中。然后 edit 命令可以打开 a.sql 进行编辑。为了更新缓存中的 sql 语句,你需要 get a.sql,这样就可以更新了。

repository.save怎么实现的sql语句

repository.save怎么实现的sql语句Oracle刚刚写过的内容实际是写在临时sql文件中。所以在SQLPlus中你可以savec:a.sql就可以把最近的命令保存在c:下面的a.sql中。然后edit命令可以打开a.sql进行编辑。为了更新缓存中的sql语句,你需要geta.sql,这样就可以更新了。

请问sql语句里matches和like的区别

like 使用%代表任何字符like 使用?代表单个字符matches使用*代表任何字符matches使用_代表单个字符like的语法是一个SQL标准matches好象是informix自己的标准,说白了就是对matches支持会更好

用dataGridView将数据绑上去后,再修改其中的数据,sql语句测试正确,却改不了数据,为什么呢?

this.GridView1.DataBind();重新绑定

oracle中使用sql语句的时候有的表的名称是stat.user_info,这个stat是什么?

stat可能是包,也有可能是用户。

如何通过sql语句kill一个session

kill session首先要有执行权限的这个权限一般只有dba拥有的啊!

请教一个数据库查询效率问题,以下是我sql语句。

你在你order by 的字段上建个索引试下

SQL语句中Case 的用法

Select Case 语句在有多个可能的条件必须被检查时使用。与 If 语句不同,Select Case语句在找到匹配的Case 表达式并执行了Case 表达式和下一个Case 表达式之间的语句后将立即跳出。如果没有匹配的Case 表达式,将执行其它语句。Case Else 与lse 的意义相同。Case 语句能接受各种类型的(作为判断条件的)表达式。表达式可以是单一值、由逗号分隔的一组值、能返回值的函数、用"To"关键字指定的值的范围或者使用"Is"关键字对等式或不等式进行测试。您可以连接不同类型的不同表达式,只要将它们用逗号分开即可。

数据库表里只显示一条数据,页面却显示2条重复的,我把sql语句那栋数据库里,条件查出来得也是2条

你把sql语句贴出来呀?你这肯定有问题。联合查询,还是单表查询。

求SQL语句

--写一条sql语句查询出每个产品2011-05月销售的总金额。(提示:总金额=单价*产品数量)select P.strProductName,sum(S.intNum*P.Price) as "总金额" from Product P inner join Sales S on P.intProductID=S.intProductID where MONTH(S.CreateDate)=5 and YEAR(S.CreateDate)=2011 group by P.strProductName; --写一条sql语句查询出2011-5月每个客户消费的产品数量。select CS.CustomerName,CS.strProductName,SUM(CS.intNum)as"产品数量" from (select C.CustomerName, P.strProductName,S.intNum from Sales S inner join Customer C on S.CustomerID=C.CustomerID inner join Product P on P.intProductID=S.intProductID where MONTH(S.CreateDate)=5 and YEAR(S.CreateDate)=2011 ) CS group by CS.CustomerName,CS.strProductName; --写一条sql语句查询出2011-5月每个客户每个产品的总金额select CS.CustomerName,CS.intProductID,SUM(CS.intNum*CS.Price) as"总金额" from (select C.CustomerName, S.intProductID,S.intNum,P.Price from Sales S inner join Customer C on S.CustomerID=C.CustomerID inner join Product P on S.intProductID=P.intProductID where MONTH(S.CreateDate)=5 and YEAR(S.CreateDate)=2011 ) CS group by intProductID,CustomerName;--写一条sql语句查询出男客户2011-05月的总销售额select C.CustomerName,SUM(P.Price*S.intNum) as "总销售额" from Customer C inner join Sales S on S.CustomerID=C.CustomerID inner join Product P on S.intProductID=P.intProductID where C.Sex=0 and MONTH(S.CreateDate)=5 and YEAR(S.CreateDate)=2011 group by CustomerName;用试图来做简单一点,我把这题做的完整的发在百度空间了,下面是链接网址,你可以看一下http://hi.baidu.com/mimicha/blog/item/5e6b3d4212afac166a63e510.html

假想一条SQL语句,查询19年所有客户的订单总金额

select a.customerid,a.customername,sum(c.money) moneyfrom customer a,orders b,orderitem cwhere a.customerid = b.customeridand b.orderid = c.orderidand b.orderdate between "2019-01-01 00:00:00.000" and "2019-12-31 23:59:59.999"group by a.customerid,a.customernameorder by money desc

请教一个sql语句select中包含select

pkey是主键,后8位相等比较必须用substr,否则你子查询有多条的话,后面你的条件就不好关联了。

如何用SQL语句将两个多对多字段以一对多形式显示

Select c1 as kefu,Count(*)From (Select dist c1,c2From (Select kefu as c1,fk as c2From tablenameWhere t=2UnionSelect fk,kefuFrom tableNameWhere t=1))Group by c1

mybatis的sql语句中的numeric怎么写

<select id="selectByTCR" resultType="com.securityeva.model.CommonType" parameterType="Map">SELECT we.safeTypeId,COUNT(safeTypeId) as safeTypeId,com.name from se_weak_analysis we,se_common_type com where riskLevel=#{riskLevel} and we.safeTypeId=com.id and infosysId in ( select id from se_info_sys where id in( select infosysId from se_report where uploadTime between#{beginTime} and #{endTime} GROUP BY infosysId ) and netTypeId=#{netTypeId} GROUP BY netTypeId) GROUP BY safeTypeId</select>

SQL语句中numeric(5,1) default 0是什么意思

带固定精度和小数位数的数值数据类型。decimal[ (p[ , s] )] 和 numeric[ (p[ , s] )]固定精度和小数位数。使用最大精度时,有效值从 - 10^38 +1 到 10^38 - 1。decimal 的 ISO 同义词为 dec 和 dec(p, s)。numeric 在功能上等价于 decimal。p(精度)最多可以存储的十进制数字的总位数,包括小数点左边和右边的位数。该精度必须是从 1 到最大精度 38 之间的值。默认精度为 18。s (小数位数)小数点右边可以存储的十进制数字的最大位数。小数位数必须是从 0 到 p 之间的值。仅在指定精度后才可以指定小数位数。默认的小数位数为 0;因此,0 <= s <= p。最大存储大小基于精度而变化。精度 存储字节数 1 - 9 5 10-19 9 20-28 13 29-38 17defalut 表示默认值是0

MSSQL中如何用SQL语句为字段增加不为空的约束

alter table 表 alter column 列 类型 not null

有关图书馆借阅系统的SQL语句

晕 具体点?要求?

MSSQL中如何用SQL语句为字段增加不为空的约束

altertabletablenameaddnewfieldvarchar(10)notnulldefault""对于有数据的表,增加非空字段,要加入默认值。如果原有字段改为非空,在有数据的情况要,要先将空值赋值再作修改:updatetablenamesetfieldname=""wherefieldnameisnullaltertabletablenamealterCOLUMNfieldnamevarchar(10)notnull

在mysql语句中,怎么把时间戳转为时间?

在mysql语句中,怎么把时间戳转为时间?mysql 中把时间戳转换成普通时间,使用FROM_UNIXTIME函数一、FROM_UNIXTIME函数简介1、函数作用:将MYSQL中以INT(11)存储的时间以"YYYY-MM-DD"格式来显示。2、语法:FROM_UNIXTIME(unix_timestamp,format)返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条目同样的修饰符。根据format字符串格式化date值。

SQL语句 INNER JOIN 后如何降序排列?

楼主,你好!hebeishimeng的回答是正确的,看了你的追问,我向你那边应该是在其他语言中引用SQL语句。

SQL语句怎么删除指定日期的数据

delete from table where DATE_FORMAT(date, "%Y%m%d %H%i%s") = "2012-10-22 00:00:01";

怎样用sql语句删除表中的前面几条记录

直接DELETE TOP (5) FROM student

删除Employee表中职工号为“19620426”的记录, 正确的SQL语句是

【答案】:D【解析】删除数据的命令格式为:DELETEFROM表名[WHERE条件],WHERE指定被删除的记录所满足的条件,因此选D。

怎么连接MYSQL数据库和执行SQL语句(mysql数据库连接命令)

首先创建连接就创建个Cnnection对象,然后把驱动加上,还有帐号密码什么的!我没连过sql数据库,不知道驱动,你可以在网上搜一下。给你一个我连接mysql数据库的例子publicConnectionGetdata(){//这是连接数据库的一个方法,还可以配置连接池。Connectioncon=null;try{Class.forName("com.mysql.jdbc.Driver");//加驱动con=.("jdbc:mysql://localhost:3306/data","root","qq");//数据库路径、端口、库名、数据库用户名和密码}catch(e){e.();}catch(e){e.();}returncon;}publicvoiddelete(intid){//对数据库进行操作的方法,先调用上面写好的连接!Connectioncon=Getdata();Statementst;try{st=con.();st.("deletefromkaoshiwhereid="id);}catch(e){//TODOAuto-generatedcatchblocke.();}}

SQL语句:DELETE*FROM参赛选手WHERE姓名=‘陈远志’,其功能是?

删除参赛选手表中姓名为陈远志的所有记录。

delete sql语句有哪些?

delete SQL语句:1、DELETE FROM <table/view> WHERE <condition>,用于删除表中的某行或整个数据表中的数据。2、DELETE FROM table_name,用于删除所有行。可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整。3、DELETE FROM Person WHERE LastName = "Wilson",用于删除某个行列。扩展资料一、delete sql应用:1、对于删除整个表的所有数据时,delete并不会释放表所占用的空间。2、如果用户确定是删除整表的所有数据,那么使用 truncate table 速度更快。二、delete应用实例:1、delete from gem_file where gem01 = "2BSB";—where还可以用子查询作为condition。2、作用:删除部门编号为"2BSB"的部门信息。

sql语句中natural的用法是什么?

你看看这个:natural--1)两个关系(左关系和友关系)中所有具有相同的名称的属性的值要相等。2)natural总是出现在join语句前面3)natural的结果关系中,相同名称的属性只会出现一次4)natural的结果关系中,属性的排列顺序总是按照左关系优先的原则。5)MySQL中,naturaljoin不能使用on指定其他查询条件on--1)on用在join语句后面2)on后面采用关系1.属性a=关系2.属性b的谓词语法连接分类关系间的连接分为内连接(innerjoin)和外连接(outerjoin)。外连接又可分为:leftouterjoin,rightouterjoin和fullouterjoin。内连接计算方法:如果不加条件将会产生笛卡尔积;如果有连接条件,按照下一节"连接条件"的规则进行运算,符合条件的元组放入结果关系中。leftouterjoin计算过程:1)计算相同连接条件下的内连接,将符合条件的元组放入结果关系中;2)如果左关系中有元组不符合条件,将之放入结果关系中,余下的用NULL补足rightouterjoin计算过程:1)计算相同连接条件下的内连接,将符合条件的元组放入结果关系中;2)如果右关系中有元组不符合条件,将之放入结果关系中,余下的用NULL补足fullouterjoin1)计算相同连接条件下的内连接,将符合条件的元组放入结果关系中;2)如果左、右关系中有元组不符合条件,将之放入结果关系中,余下的用NULL补足as用来修改连接后结果关系的关系名称以及属性名称。连接条件关系之间的连接是可以有条件的,外连接必须要加条件,内连接如果不加条件将会产生笛卡尔积。有哪些连接条件呢?natural--1)两个关系(左关系和友关系)中所有具有相同的名称的属性的值要相等。2)natural总是出现在join语句前面3)natural的结果关系中,相同名称的属性只会出现一次4)natural的结果关系中,属性的排列顺序总是按照左关系优先的原则。5)MySQL中,naturaljoin不能使用on指定其他查询条件on--1)on用在join语句后面2)on后面采用关系1.属性a=关系2.属性b的谓词语法using--1)和natural类似,只是显式指定了属性名称2)如果using也指定了所有相同名称的属性,那么和natural相同MySQLMySQL中,naturaljoin和leftouterjoin不能在同时使用,可以先将naturaljoin语句做成一个view,然后再使用leftouterjoinjoin默认为innerjoin

sql语句中natural的用法是什么?

你看看这个:natural -- 1)两个关系(左关系和友关系)中所有具有相同的名称的属性的值要相等。 2)natural 总是出现在 join语句前面 3)natural的结果关系中,相同名称的属性只会出现一次 4)natural的结果关系中,属性的排列顺序总是按照左关系优先的原则。 5) MySQL中,natural join不能使用on指定其他查询条件 on-- 1)on 用在join语句后面 2)on 后面采用关系1.属性a=关系2.属性b 的谓词语法 连接分类 关系间的连接分为内连接(inner join)和外连接(outer join)。 外连接又可分为:left outer join,right outer join和full outer join。 内连接计算方法: 如果不加条件将会产生笛卡尔积; 如果有连接条件,按照下一节"连接条件"的规则进行运算,符合条件的元组放入结果关系中。 left outer join 计算过程: 1)计算相同连接条件下的内连接,将符合条件的元组放入结果关系中; 2)如果左关系中有元组不符合条件,将之放入结果关系中,余下的用NULL补足 right outer join 计算过程: 1)计算相同连接条件下的内连接,将符合条件的元组放入结果关系中; 2)如果右关系中有元组不符合条件,将之放入结果关系中,余下的用NULL补足 full outer join 1)计算相同连接条件下的内连接,将符合条件的元组放入结果关系中; 2)如果左、右关系中有元组不符合条件,将之放入结果关系中,余下的用NULL补足 as用来修改连接后结果关系的关系名称以及属性名称。 连接条件 关系之间的连接是可以有条件的,外连接必须要加条件,内连接如果不加条件将会产生笛卡尔积。 有哪些连接条件呢? natural -- 1)两个关系(左关系和友关系)中所有具有相同的名称的属性的值要相等。 2)natural 总是出现在 join语句前面 3)natural的结果关系中,相同名称的属性只会出现一次 4)natural的结果关系中,属性的排列顺序总是按照左关系优先的原则。 5) MySQL中,natural join不能使用on指定其他查询条件 on-- 1)on 用在join语句后面 2)on 后面采用关系1.属性a=关系2.属性b 的谓词语法 using-- 1)和natural类似,只是显式指定了属性名称 2)如果using也指定了所有相同名称的属性,那么和natural相同 MySQL MySQL中,natural join和 left outer join不能在同时使用,可以先将natural join语句做成一个view,然后再使用left outer join join 默认为inner join

用sql语句创建数据表列属性的时候null和not null都没写是允许空值还是不允许空值? 如图

一般关系型数据库的字段在不指名not null 的情况下都是允许null值的

sql语句 id INT NOT NULL是什么意思?

你这个应该是建表时字段定义的一部份吧,是定义一个字段,字段名是id ,类型 是int 整型,not null 是说字段不允许为空值

sql 命令求解 sql语句中如何为新增列指定为NOT NULL

在建表的时候字段后面直接加上not null的判断,每个数据库语法都不一样。sqlserver是create table xxx (id int not null,desc varchar(100) not null)oracle好像也一样,db2似乎也是informix好像需要额外加非空判断。

sql语句中如何为新增列指定为NOT NULL?

主键肯定不能为not null了- - 还有就是看看有没约束 ALTER TABLE 只允许添加满足下述条件的列: 列可以包含空值;或者列具有指定的 DEFAULT 定义;或者要添加的列是标识列或时间戳列;或者,如果前几个条件均未满足,则表必须为空以允许添加此列。不能将列"xxx"添加到非空表"xx"中,因为它不满足上述条件。 alter table xx add 添加列表要是空的 指定列是否可接受空值。如果列不允许空值,则只有在指定了默认值或表为空的情况下,才能用 ALTER TABLE 语句添加该列。只有同时指定了 PERSISTED 时,才能为计算列指定 NOT NULL。如果新列允许空值,但没有指定默认值,则新列在表中的每一行都包含一个空值。如果新列允许空值,并且指定了新列的默认值,则可以使用 WITH VALUES 将默认值存储到表中每个现有行的新列中。 如果新列不允许空值,并且表不为空,那么 DEFAULT 定义必须与新列一起添加;并且,加载新列时,每个现有行的新列中将自动包含默认值。 在 ALTER COLUMN 语句中指定 NULL,可以强制 NOT NULL 列允许空值,但 PRIMARY KEY 约束中的列除外。只有列中不包含空值时,才可以在 ALTER COLUMN 中指定 NOT NULL。必须将空值更新为某个值后,才允许执行 ALTER COLUMN NOT NULL 语句,例如: 因为新建不能为空所以要先新建个可以为空的列然后强制为空 下面代码以测试alter table 表名 add 列名 nvarchar(20) nullgoUPDATE 表名 SET stuName = N"some_value" WHERE 列名 IS NULLALTER TABLE 表名 ALTER COLUMN 列名 NVARCHAR(20) NOT NULLgo

sql语句中的unsigned和not null是什么意思?

unsigned 是int 无符号,就是都是正数not null表示该字段不允许空值

sql语句中如何为新增列指定为NOT NULL

主键肯定不能为not null。再一个就是看看是否有约束了。ALTER TABLE 只可以添加满足下述条件的列: 列可以包含空值;或者列具有指定的 DEFAULT 定义;或者要添加的列是标识列或时间戳列;当然,如果前几个条件均未满足,表必须为空以允许添加此列。不能将列"xxx"添加到非空表"xx"中,它不满足上面条件。alter table xx add 添加列表要是空的指定列是否可接受空值。如果列不允许空值,则在指定了默认值或表为空的情况下,才能用 ALTER TABLE 语句添加该列。同时指定了 PERSISTED 时,才可以为计算列指定 NOT NULL。如果新列允许空值,但没有指定默认值,则新列在表中的每一行都包含一个空值。如果新列允许空值,并且指定了新列的默认值,就可以使用 WITH VALUES 将默认值存储到表中每个现有行的新列中。如果新列不允许空值,并且表不为空,那么 DEFAULT 定义必须与新列一起添加;并且,加载新列时,每个现有行的新列中将自动包含默认值。在 ALTER COLUMN 语句中指定 NULL,可以强制 NOT NULL 列允许空值,但 PRIMARY KEY 约束中的列除外。只有列中不包含空值的时候,才可以在 ALTER COLUMN 中指定 NOT NULL。须将空值更新为某个值后,才允许执行 ALTER COLUMN NOT NULL 语句,例如:新建不能为空,故要先新建个可以为空的列。然后强制为空。下面代码以测试。alter table 表名 add 列名 nvarchar(20) nullgoUPDATE 表名 SET stuName = N"some_value" WHERE 列名 IS NULLALTER TABLE 表名 ALTER COLUMN 列名 NVARCHAR(20) NOT NULLgo

sql语句中如何为新增列指定为NOT NULL?

主键肯定不能为not null。再一个就是看看是否有约束了。ALTER TABLE 只可以添加满足下述条件的列: 列可以包含空值;或者列具有指定的 DEFAULT 定义;或者要添加的列是标识列或时间戳列;当然,如果前几个条件均未满足,表必须为空以允许添加此列。不能将列"xxx"添加到非空表"xx"中,它不满足上面条件。alter table xx add 添加列表要是空的指定列是否可接受空值。如果列不允许空值,则在指定了默认值或表为空的情况下,才能用 ALTER TABLE 语句添加该列。同时指定了 PERSISTED 时,才可以为计算列指定 NOT NULL。如果新列允许空值,但没有指定默认值,则新列在表中的每一行都包含一个空值。如果新列允许空值,并且指定了新列的默认值,就可以使用 WITH VALUES 将默认值存储到表中每个现有行的新列中。如果新列不允许空值,并且表不为空,那么 DEFAULT 定义必须与新列一起添加;并且,加载新列时,每个现有行的新列中将自动包含默认值。在 ALTER COLUMN 语句中指定 NULL,可以强制 NOT NULL 列允许空值,但 PRIMARY KEY 约束中的列除外。只有列中不包含空值的时候,才可以在 ALTER COLUMN 中指定 NOT NULL。须将空值更新为某个值后,才允许执行 ALTER COLUMN NOT NULL 语句,例如:新建不能为空,故要先新建个可以为空的列。然后强制为空。下面代码以测试。alter table 表名 add 列名 nvarchar(20) nullgoUPDATE 表名 SET stuName = N"some_value" WHERE 列名 IS NULLALTER TABLE 表名 ALTER COLUMN 列名 NVARCHAR(20) NOT NULLgo

sql语句中如何为新增列指定为NOT NULL?

主键肯定不能为not null了- - x0dx0a还有就是看看有没约束 x0dx0ax0dx0aALTER TABLE 只允许添加满足下述条件的列: 列可以包含空值;或者列具有指定的 DEFAULT 定义;或者要添加的列是标识列或时间戳列;或者,如果前几个条件均未满足,则表必须为空以允许添加此列。不能将列"xxx"添加到非空表"xx"中,因为它不满足上述条件。 x0dx0ax0dx0aalter table xx add 添加列表要是空的 x0dx0ax0dx0a指定列是否可接受空值。如果列不允许空值,则只有在指定了默认值或表为空的情况下,才能用 ALTER TABLE 语句添加该列。只有同时指定了 PERSISTED 时,才能为计算列指定 NOT NULL。如果新列允许空值,但没有指定默认值,则新列在表中的每一行都包含一个空值。如果新列允许空值,并且指定了新列的默认值,则可以使用 WITH VALUES 将默认值存储到表中每个现有行的新列中。 x0dx0ax0dx0a如果新列不允许空值,并且表不为空,那么 DEFAULT 定义必须与新列一起添加;并且,加载新列时,每个现有行的新列中将自动包含默认值。 x0dx0ax0dx0a在 ALTER COLUMN 语句中指定 NULL,可以强制 NOT NULL 列允许空值,但 PRIMARY KEY 约束中的列除外。只有列中不包含空值时,才可以在 ALTER COLUMN 中指定 NOT NULL。必须将空值更新为某个值后,才允许执行 ALTER COLUMN NOT NULL 语句,例如: x0dx0ax0dx0a因为新建不能为空所以要先新建个可以为空的列x0dx0a然后强制为空 x0dx0a下面代码以测试x0dx0aalter table 表名 add 列名 nvarchar(20) nullx0dx0agox0dx0aUPDATE 表名 SET stuName = N"some_value" WHERE 列名 IS NULLx0dx0ax0dx0aALTER TABLE 表名 ALTER COLUMN 列名 NVARCHAR(20) NOT NULLx0dx0ago

sql语句中如何为新增列指定为NOT NULL?

主键肯定不能为not null。再一个就是看看是否有约束了。ALTER TABLE 只可以添加满足下述条件的列: 列可以包含空值;或者列具有指定的 DEFAULT 定义;或者要添加的列是标识列或时间戳列;当然,如果前几个条件均未满足,表必须为空以允许添加此列。不能将列"xxx"添加到非空表"xx"中,它不满足上面条件。alter table xx add 添加列表要是空的指定列是否可接受空值。如果列不允许空值,则在指定了默认值或表为空的情况下,才能用 ALTER TABLE 语句添加该列。同时指定了 PERSISTED 时,才可以为计算列指定 NOT NULL。如果新列允许空值,但没有指定默认值,则新列在表中的每一行都包含一个空值。如果新列允许空值,并且指定了新列的默认值,就可以使用 WITH VALUES 将默认值存储到表中每个现有行的新列中。如果新列不允许空值,并且表不为空,那么 DEFAULT 定义必须与新列一起添加;并且,加载新列时,每个现有行的新列中将自动包含默认值。在 ALTER COLUMN 语句中指定 NULL,可以强制 NOT NULL 列允许空值,但 PRIMARY KEY 约束中的列除外。只有列中不包含空值的时候,才可以在 ALTER COLUMN 中指定 NOT NULL。须将空值更新为某个值后,才允许执行 ALTER COLUMN NOT NULL 语句,例如:新建不能为空,故要先新建个可以为空的列。然后强制为空。下面代码以测试。alter table 表名 add 列名 nvarchar(20) nullgoUPDATE 表名 SET stuName = N"some_value" WHERE 列名 IS NULLALTER TABLE 表名 ALTER COLUMN 列名 NVARCHAR(20) NOT NULLgo

mysql语句中NOT NULL的意思

就是表示字段的两个属性:NOT NULL :表示该字段不能为空;auto_increment:表示自动增长其他字段的NOT NULL 也是表示不为空。
 首页 上一页  1 2 3 4 5  下一页  尾页