在sql查询分析器建表不用设主键

来源:百度知道 编辑:UC知道 时间:2024/07/05 04:03:20
我在SQL查询分析起中 建立个表
create table C( Cno char(3),
Cname char(10),
Cpno char(3),
Ccredit int);
竟然完全没有主键也可以造出表来
这是老师的范提 我自己作的时候 我用SQL分析起通过代码制造了个表 然后想通过企业管理器对弄出来的表 进行添加 发现填一个错误出现一个 我快崩溃了 大家救救我啊 如何作啊
比如说
我建立个
create table 客户信息
(登记申请 char(10),
三方授权 char(10),
冻结手续 char(10),
)
我这个在查询分析起里输入好后
然后在企业管理里面输入 当我输入好第一行后 按第二行就郁闷...
跳出信息不正确,会影响到更新什么什么的

表可以没有主键的,你定义的有问题,char(10)表示必须且只能有10个字符,通常身份证号码字段这么定义。建议用nvarchar(50)。如果我说的不对,你把错误提示发出来。

出现什么错误?

char(10)表示会占10个字符,如果输入的字符不到十个,它也还是会占用10个字符,只要不超过指定长度就可以了。楼主出现的问题不可能是因为这个。不建立主键创建的表插入数据是不存在什么问题的。但是如果插入了重复的数据,在修改的时候系统就会因为无法识别修改的是哪条记录而报错了。

不说错误谁知道为什么

大体注意 输入的内容满足你定义的字段
比如说Cno,Cpno 长度是3
int 只能输入数字(整数)
Cname 长度是10

出现差错,肯定就是输入内容不符合表设计内容或CHECK约束,你把表中的属性的的数据类型改一改,还有是否为空。
CHAR(10)才10个字符啊。。