SQL資料型別和後字的數字是可以隨便亂設的嗎 會有什么結果

時間 2022-09-09 22:15:36

1樓:匿名使用者

不能亂寫,要根據需求來寫。

比如你要在某欄位存'xyz'這樣的字串,那麼如果你給了這個欄位的資料型別為數字,那麼這個就存不了。如果你給的是char(2)或者char(1)那麼也存不了,因為長度不足。結果就是不能儲存,報錯。

再比如,你在某欄位存的是錢數,可能是'123.45',可是你的資料型別是整數型,那麼顯示出來就是123,因為這是錢數,讓你平白無故沒了0.45,我想你不會高興吧。

再比如,你的數字欄位最高能存8位,還是錢數,某人有1億也就是9位,可是在你這裡就不能存入了。如果我沒記錯,計算值好像是可以存入的,不過好像會變成1千萬(因為存不了1億),平白縮水為十分之一,估計他要跳樓了。

每個欄位型別有每個欄位型別的用法,一般情況下最好不要混用,那會增加很多的工作量的。

2樓:匿名使用者

不能,看你需求的。比如你設定字元竄長度為50,當你輸入的東西大於50的時候會報錯。資料型別的話比如時間有的會設定成datetime有的喜歡字元竄,這個在你用sql查詢設定條件的時候會有影響

3樓:草名字真心難起

varchar(100) 指的是字元的最大長度是100位元組

numeric(7, 3)欄位是數字型,長度為7 小數為3的

還有char(2)

一般網投下注了數字資料娛樂公司可以亂改過來嗎

4樓:匿名使用者

對方有管理許可權的,可以操作任何資料的修改,包括你的資料,私人的網的話可以嘗試通過技術拿許可權去分析伺服器的日誌。

sql server 列中的資料有的是字母,有的是數字,要求先數字,後字母排序。

5樓:匿名使用者

如果數字都是小於10的,可以直接order by,按照字元規則排序就是你想要的這個。

如果數字有兩位以上的,這時候11會排在2的前面,如果想數字按照數字的規則排序,字母按照字母的規則排序,需要根據條件將數字和字母分別查詢出來進行排序,然後使用union all聯接出結果。

with tbtemp as (

select '0' as num

union all

select '12'

union all

select '1'

union all

select '3'

union all

select '22'

union all

select '5'

union all

select 'c'

union all

select 'b'

) --轉換的數字型別根據自己需要修改

--top數目大於可能出現的數目即可

select * from (

select top 10000000 * from tbtemp where isnumeric(num) >0

order by convert(decimal(9,2),num))a

union all

select * from(

select top 10000000 * from tbtemp where isnumeric(num)=0

order by num)b

sql中數字和字母用什麼型別?我用了varchar的,但是還是錯了,為什麼? 10

6樓:匿名使用者

你這錯是長度不夠的錯

你看你你插入資料的長度是不是大於你定義資料的長度了

7樓:春天在這裡開花

此處例子----sql server

對於字元型別的有:

char:固定長度,儲存ansi字元,不足的補英文半形空格。

nchar:固定長度,儲存unicode字元,不足的補英文半形空格varchar:可變長度,儲存ansi字元,根據資料長度自動變化。

nvarchar:可變長度,儲存unicode字元,根據資料長度自動變化。

也就是說:varchar 可變長度,

varchar(50)即長度為:50個字元當有存入值時,就跟據實際的值的大小(長度)存入資料。

sql server中的成績欄位的資料型別一般是什麼?

8樓:江南煙夢

可以用numeric(5,2)

或者decimal(5,2)

前面5表示總的位數,後面的2表示精度(小數點後的位數). 比如 99.12 , 100.00, 67.24

如果想精確到小數點後1位,可以修改為numeric(4,1) 或decimal(4,1) 比如: 99.1, 100.0, 67.2

資料庫中對於儲存漢字和各種符號的欄位應該定義為什麼型別?

9樓:匿名使用者

需要定義成字元型,一般可用char、varchar、nchar、nvarchar等,具體需要看實際需求。

這幾種型別的比較:

char

char儲存定長資料很方便,char欄位上的索引效率級高,比如定義char(10),那麼不論你儲存的資料是否達到了10個位元組,都要佔去10個位元組的空間。

varchar

儲存變長資料,但儲存效率沒有char高,如果一個欄位可能的值是不固定長度的,我們只知道它不可能超過10個字元,把它定義為 varchar(10)是最合算的。varchar型別的實際長度是它的值的實際長度+1。為什麼"+1"呢?

這一個位元組用於儲存實際使用了多大的長度。

從空間上考慮,用varchar合適;從效率上考慮,用char合適,關鍵是根據實際情況找到權衡點。

nchar、nvarchar

這兩種從名字上看比前面三種多了個"n"。和char、varchar比較起來,nchar、nvarchar最多儲存4000個字元,不論是英文還是漢字;而char、varchar最多能儲存8000個英文,4000個漢字。可以看出使用nchar、nvarchar資料型別時不用擔心輸入的字元是英文還是漢字,較為方便,但在儲存英文時數量上有些損失。

所以一般來說,如果含有中文字元,用nchar/nvarchar,如果純英文和數字,用char/varchar

10樓:匿名使用者

首先定義的欄位型別跟顯示亂不亂碼沒有關係

會出現亂碼的原因無非是資料庫伺服器跟客戶端機器的字符集不一樣所以在搭建一個資料庫伺服器時,應該要先設定好資料庫伺服器的字符集,通常會選用utf8,客戶端在開發的時候也要跟他們協商好,要使用資料庫伺服器可以識別的字符集,比如也用utf8,這樣就不會出現資料亂碼的問題。

望採納!

11樓:

nvarchar,如果有特殊字元的話,會產生亂碼.不知text型別會不會產生亂碼,沒有試過,你可以試一下,但(n)varchar會產生亂碼地

12樓:來自小雷山天資聰穎的黃忠

型別是varchar,然後編碼還是 utf-8

易語言裡型別什麼意思,易語言中的資料型別是什麼意思?求詳解,不需說明內容,謝謝!

整數型 就是1,2,3,4,數學你學過整數吧!讓你設定程式視窗的寬度你總不能設定個 你 我 吧!文字型 就是代表一些文字,比如程式視窗的標題你就要用文字型小數型 同數學概念 邏輯型 一共有兩種,真,假,比如編輯框有一個引數,是否允許多行,你選擇真就是允許,選擇假就是不允許 位元組型 與整數型意義相同...

什麼是數值的範圍 列出的資料型別各自的範圍是多少 C語言

娛樂小八卦啊 數值的範圍就是這個碗可以盛多少飯。資料型別各自的範圍如下 char 1 int 2 short 2 long 4 long long 8 float 6 double 10。擴充套件資料 c語言中的常量 常量有固定的數值,不能進行賦值操作,任何基本型別資料都可以是常量。整數常量 可以說...

C 是一種靜態資料型別檢查的語言。什麼是靜態資料型別檢查

換種說法就是編譯時型別檢查,至於執行時的型別檢查就需要自己處理了 資料型別在編譯時檢查 c語言和c 是不是一個? c 是直接從c語言發展過來的沒錯,但最初這種語言不是叫c 而是c with class,這是由於當時c語言在程式設計界居於老大的地位,要想發展一種新的語言,最強大的競爭對手就是c語言,所...