Ⅰ sql server 中的欄位默認值為什麼沒用
那你這樣寫呢:
insert into formtable_main_112_dt1 (mainid,yfrq,bz,jhfk,fkxx) values (7,'2015-05-06','ces ',220,2)
這樣默認的值就不用你填了,資料庫自己給你填了
Ⅱ MYSQL資料庫欄位默認值無效
ALTER
DATABASE
databasename
CHARACTER
SET
utf8;
CREATE
TABLE
xs(
sgjk
VARCHAR(20),
sfkzc
VARCHAR(2)
DEFAULT
'否'
)ENGINE=INNODB
DEFAULT
CHARSET=utf8
注意設置資料庫的編碼,和表的編碼。一般情況下,你的資料庫是什麼編碼,如果表默認那就是和資料庫一樣的。這個問題應該是你在安裝資料庫的時候,沒有選擇utf-8編碼。
Ⅲ 資料庫設置默認值為什麼沒用
oracle資料庫中的default的用法是:在創建資料庫表時,可以指定一個DEFAULT值(即默認值)。對資料庫欄位使用默認值有助於將資料庫設計問題與應用程序代碼隔離。可以在以後某個時候通過一條ALTERTABLE命令改變一個欄位的默認值,改變之後應用程序代碼會立即開始使用新值。即DEFAULT值只有當一個欄位沒有在INSERT或MERGE中指定值,或者使用了DEFAULT關鍵字時才會使用。如果你不顯式地聲明一個DEFULAT值,Oracle將隱式地將默認值定義為NULL,而且DEFAULT關鍵字也是這樣。從Oracle9i開始,可以在DEFAULT子句中使用諸如SYSDATE或CURRENT_TIMESTAMPE之類的偽欄位。例如:
Ⅳ SQL欄位顯示默認值的問題
默認值僅對設置默認值後的記錄有效,也就是說如果先添加數據再改默認值就沒有用了.
你可以用update語句更新一下
在查詢分析器里用
update
表名
set
欄位1
=
0
where
欄位1
is
null
update
表名
set
欄位2
=
''
where
欄位1
is
null
Ⅳ SQL欄位顯示默認值的問題
默認值僅對設置默認值後的記錄有效,也就是說如果先添加數據再改默認值就沒有用了.
你可以用update語句更新一下
在查詢分析器里用
update 表名 set 欄位1 = 0 where 欄位1 is null
update 表名 set 欄位2 = '' where 欄位1 is null
Ⅵ SQL 使用insert插入數據默認值沒有顯示
默認值是在你沒有傳入這個參數時才會有,你這樣寫就是相當於給那列傳值了,值為NULL或者『』字元串空知。應該這樣寫:
insert
into
stuInfo
(e,stuNo,stuSex,stuAge,stuSeat)values
('adf','s25306','男',19,6)
語法是這樣的insert
into
表名
(要插入數據的列名)
values(與前面要插入列對應的值)道
如果還報錯的話,你看看你設置那欄位是否允許為空,把它設置為不允許為空,默認值為「地址不詳」
Ⅶ SQL Server 默認值的問題
民族 nvarchar(10) default N'漢'
Ⅷ MSSQL存儲過程設置默認值, money 類型設為0為什麼沒有效果
1有些地方沒必要4個單引號,3個就行,在sql中字元串的拼接語句中要表示1個單引號就得用兩個單引號,前一個表示轉義的意思,編程語言都有轉義一說
2因為是字元串拼接的,而@FormerPrice這些是money類型的,如果不轉換,就默認要把字元串轉換成money類型了,就會出錯。所以得把@FormerPrice之類的轉換成字元類型的,存儲過程修改如下
ALTER PROCEDURE [dbo].[SearchMerchandise]
@Category varchar(50),
@Brand varchar(50),
@Type varchar(50),
@FormerPrice money,
@LatterPrice money
AS
BEGIN
declare @QueryString varchar(100)
set @QueryString = 'select * from Merchandise where Category = ''' + @Category + ''' and Brand = ''' + @Brand + ''' '
SET NOCOUNT ON;
if @Type<>''
set @QueryString = @QueryString+' and Type=''' +@Type+ ''''
if @FormerPrice<>'' and @LatterPrice<>''
set @QueryString = @QueryString+' and PriceNow between '''+ convert(varchar(20),@FormerPrice) + ''' and ''' + convert(varchar(20),@LatterPrice) + ''''
if @FormerPrice<>'' and @LatterPrice=''
set @QueryString = @QueryString+' and PriceNow >=''' + convert(varchar(20),@FormerPrice) + ''''
if @FormerPrice='' and @LatterPrice<>''
set @QueryString = @QueryString+' and PriceNow <=''' + convert(varchar(20),@LatterPrice) + ''''
exec(@QueryString)
END
Ⅸ MYSQL資料庫欄位默認值無效
ALTER DATABASE databasename CHARACTER SET utf8;
CREATE TABLE xs(
sgjk VARCHAR(20),
sfkzc VARCHAR(2) DEFAULT '否'
)ENGINE=INNODB DEFAULT CHARSET=utf8
注意設置資料庫的編碼,和表的編碼。一般情況下,你的資料庫是什麼編碼,如果表默認那就是和資料庫一樣的。這個問題應該是你在安裝資料庫的時候,沒有選擇utf-8編碼。
Ⅹ 怎樣使sqlserver的默認值生效
首先你不能給這個屬性填充值,哪怕是null都不可以,不然它會把null插入到表裡;給你舉個例子:假設Users表:屬性:uid,username,userpass,rid(狀態,默認為0)你向這個user表裡插入數據的時候可以這么插入:insert into Users(username,userpass) values('zhangsan','zhangsan')這樣你得rid就會有一個默認值0,如果你插入了null,那麼它就不會默認為0了,它就有值了,為null;