A. sql建表时主键列名能不能用u开头,比如uid之类的,试过几次都不行,为什么啊,,,
可以的,我在server 2008上操作是可以的
数据库表字段的命名规范:
1.字段名为有意义的单词,或单词的缩写
2.如果字段由几个单词组成,则单词间用下划线("_")分割,如client_id,post_code等
3.字段名限制在30个字符内。当字段名超过30字符时,可用缩写来减少字段名的长度,如
description --> desc;information --> info;address --> addr等。
命名遵循这个规则一般都是可以的。
B. sql 列名问题
--引用别名要这样使用
select *
from
(select a as 数量1,b as 数量2
form table)t
where 数量1>数量2
改为
select
*
from
(select b.mc as 客户名称,c.pm as 品名,convert(char(20),kdrq,102) as 购买日期,
convert(char(10),dateadd(day,cast(zy1 as int),kdrq),102) as 提醒日期, --char(10)就行了
sl as 数量,a.je as 金额,ml as 毛利
from jzxsd a,cskh b,spbmzd c,cskhlb d
where b.dwlb=d.lbbh and a.dwbh =b.dwbh and a.hh=c.hh and c.zy1<>''and b.khlx=0)T
where 提醒日期=convert(char(10),getdate(),102)
C. SQL中怎样修改一个表的列名呢
1、在oracle数据库中: ALTER TABLE 表名 RENAME COLUMN 列名 TO 新列名。
2、在sqlserver数据库中:exec sp_rename '[表名].[列名]‘,’[表名].[新列名]'。
3、在mysql数据库中:ALTER TABLE 表名 CHANGE 列名 新列名 列类型。
(3)列名规范sql扩展阅读:
SQL中对表的其它操作:
1、插入列:
ALTER TABLE [表名.]TABLE_NAME ADD COLUMN_NAME DATATYPE。
2、删除列:
ALTER TABLE [表名.]TABLE_NAME DROP COLUMN COLUMN_NAME。
3、修改数据表名:
ALTER TABLE [表名.]OLD_TABLE_NAME RENAME TO NEW_TABLE_NAME。
参考资料:网络-sql语句大全
D. sql表的字段(列名)命名规则请教数据库中有多个表,其中两个表是用户信息表和商品信息表,这两个表
我公司使用的规则是两段式 业务_表义 ,比如用户表是属于基础数据的,则命名为:
base_user,商品表一般也是基础数据,命名为 base_goods。
里面的字段的命名,一般是如果是ID,或是关键字的,以ID开头 id_user ,id_goods,其他的,则是表义开头,如果user_name,或是 goods_name。
其他一些表,可能每个表都会有的,如创建人,创建时间,则统一命名 oper_user 和 oper_date
E. SQL数据库表的列名能否含有括号
可以的,用中括号括起来,例如列名为(aa),那么创建语句或者查询时需加中括号:[(aa)]
F. 标准sql修改数据表列名的语句怎么写
那个 修改列名 各个数据库都支持的写法 到底有没有, 我也不大确定.
下面是 3种数据库 各自的写法.
你可以切换着测试测试, 看看哪种写法,是 各个数据库都支持的写法.
Oracle
SQL> ALTER TABLE test_tab
2 RENAME COLUMN val TO val2;
Table altered.
SQL Server
调用 EXECUTE sp_rename 来进行 对数据库表中,列名的变更。
1> EXECUTE sp_rename N'dbo.test_tab.val', N'Tmp_val2', 'COLUMN'
2> GO
注意: 更改对象名的任一部分都可能会破坏脚本和存储过程。
1> EXECUTE sp_rename N'dbo.test_tab.Tmp_val2', N'val2', 'COLUMN'
2> GO
注意: 更改对象名的任一部分都可能会破坏脚本和存储过程。
MySQL
mysql> ALTER TABLE test_tab
-> CHANGE COLUMN val val2 VARCHAR(10); //
Query OK, 0 rows affected (0.13 sec)
Records: 0 Duplicates: 0 Warnings: 0
G. sql修改列名,增加列,删除列语句怎么写
查看列:desc 表名;
修改表名:alter table t_bookrename tobbb;
添加列:alter table 表名addcolumn 列名 varchar(30);
删除列:alter table 表名dropcolumn 列名;
修改列名: alter table bbbchangennnnn hh int;
修改列属性:alter table t_bookmodifyname varchar(22);
H. SQL Server 中怎样修改表中的列名
timestamptimestamp 这种数据类型表现自动生成的二进制数,确保这些数在数据库中是唯一的。timestamp 一般用作给表行加版本戳的机制。存储大小为 8 字节。注释Transact-SQL timestamp 数据类型与在 SQL-92 标准中定义的 timestamp 数据类型不同。SQL-92 timestamp 数据类型等价于 Transact-SQL datetime 数据类型。
Microsoft&reg; SQL Server&#8482; 将来的版本可能会修改 Transact-SQL timestamp 数据类型的行为,使它与在标准中定义的行为一致。到那时,当前的 timestamp 数据类型将用 rowversion 数据类型替换。
Microsoft&reg; SQL Server&#8482; 2000 引入了 timestamp 数据类型的 rowversion 同义词。在 DDL 语句中尽可能使用 rowversion 而不使用 timestamp。rowversion 受数据类型同义词行为的制约。有关更多信息,请参见数据类型同义词。
在 CREATE TABLE 或 ALTER TABLE 语句中,不必为 timestamp 数据类型提供列名:
CREATE TABLE ExampleTable (PriKey int PRIMARY KEY, timestamp)
如果没有提供列名,SQL Server 将生成 timestamp 的列名。rowversion 数据类型同义词不具有这样的行为。指定 rowversion 时必须提供列名。
一个表只能有一个 timestamp 列。每次插入或更新包含 timestamp 列的行时,timestamp 列中的值均会更新。这一属性使 timestamp 列不适合作为键使用,尤其是不能作为主键使用。对行的任何更新都会更改 timestamp 值,从而更改键值。如果该列属于主键,那么旧的键值将无效,进而引用该旧值的外键也将不再有效。如果该表在动态游标中引用,则所有更新均会更改游标中行的位置。如果该列属于索引键,则对数据行的所有更新还将导致索引更新。
不可为空的 timestamp 列在语义上等价于 binary(8) 列。可为空的 timestamp 列在语义上等价于 varbinary(8) 列。
I. sql语句如何重命名表名和列名
一、更改数据库名
sp_renamedb 更改数据库的名称。
语法: sp_renamedb [ @dbname = ] ' old_name ' , [ @newname = ] ' new_name '
参数: [ @dbname = ] ' old_name ' 是数据库的当前名称。old_name 为 sysname 类型,无默认值。
[ @newname = ] ' new_name ' 是数据库的新名称。 new_name 必须遵循标识符规则。new_name 为 sysname 类型,无默认值。
返回代码值: 0 (成功)或非零数字(失败)
权限: 只有 sysadmin 和 dbcreator 固定服务器角色的成员才能执行 sp_renamedb。
示例: 下例将数据库 accounting 改名为 financial。
EXEC sp_renamedb ' accounting ' , ' financial '
二、更改表名或列名
sp_rename [ @objname = ] ' object_name ' ,
[ @newname = ] ' new_name '
[ , [ @objtype = ] ' object_type ' ]
A. 重命名表:
下例将表 customers 重命名为 custs。
EXEC sp_rename ' customers ' , ' custs '
B. 重命名列:
下例将表 customers 中的列 contact title 重命名为 title。
EXEC sp_rename ' customers.[contact title] ' , ' title ' , ' COLUMN '
J. SQL 修改表中的列名(急~~~)
1、在oracle数据库中: ALTER TABLE 表名 RENAME COLUMN 列名 TO 新列名。
2、在sqlserver数据库中:exec sp_rename '[表名].[列名]‘,’[表名].[新列名]'。
3、在mysql数据库中:ALTER TABLE 表名 CHANGE 列名 新列名 列类型。
(10)列名规范sql扩展阅读:
SQL中对表的其它操作:
1、插入列:
ALTER TABLE [表名.]TABLE_NAME ADD COLUMN_NAME DATATYPE。
2、为表中某列添加约束:大于等于100
alter table 表名 add check(列名>=100)。
3、更改表某列的数据类型为nchar(30):
alter table 表名 altercolumn列名 nchar(30)。
4、删除表中某列的相关约束:
alter table 表名 dropconstraint约束名。
5、删除表中的某列:
alter table 表名 dropcolumn列名。
参考资料:网络-SQL语句大全