‘壹’ 数据库在进行CHECKDB时出现 sql Server 检测到基于一致性的逻辑 I/O 错误
先备份数据库,在测试数中,将那9张表的数据先放到临时表中,再删除那9张表,重新建表,再从临时表导入数据,如果删除那9张表都失败,表明9的数据一致性有问题,那就只能重新建新的数据库,一个表一个表导数据.....
‘贰’ 请问SQL语言中 如何限制表格数据字符型 只能出现数字
1.在存插入存储过程中进行校验。 
这样,使用存储过程插入数据,这里最常用的方法,可以最大限度地加入限制,报错和纠错功能以及完成其它表的关联操作。 
使用起来也很方便: 
EXEC TABLENAME_PROC '123456' 
--以下是存储过程脚本 
create tablename_proc 
@field1 varchar(6) 
as 
if @field1 not like [0-9][0-9][0-9][0-9][0-9][0-9] 
begin 
reserror('必须是六位数字',16,1 
return 
end 
insert into tablename(field1) values(@field1) 
go 
2.建表时加入约束: 
create tablename(field1 CHECK (FIELD1 LIKE '[0-9][0-9][0-9][0-9][0-9][0-9]')
3.建表后给已存在字段添加约束 
alter table TABLENAME 
with nocheck add constraint TABLENAME_check 
check(FIELD1 LIKE '[0-9][0-9][0-9][0-9][0-9][0-9]')
‘叁’ sql查询的数据出现乱码问题
1。select * from v$nls_parameters 
查询nls的参数,获得数据库服务器端的字符编码 
NLS_LANGUAGE 
NLS_CHARACTERSET 
2。修改本地环境变量,设置 
NLS_LANG = SIMPLIFIED CHINESE.ZHS16GBK //这个是我们的数据库字符编码 
NLS_LANG格式: 
NLS_LANG = language_territory.charset 
有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。其中:language 指定服务器消息的语言。 
territory 指定服务器的日期和数字格式。 
charset 指定字符集
