1.新建了乙個資料庫表,把excel**的資料匯入進來,全部都是普通字段,沒有主鍵,全部允許為空。然後我加入了乙個date_key列。想要往裡面填入資料,int型的。結果有的順利的手動輸入成功了。有的就報錯,如下第二張截圖所示。查了有兩三天,沒有搞定。本來我是想用sql語句進行判斷更新記錄的,結果沒有查到合適的sql語句,後來無奈放棄決定手動輸入,結果還更新不了——氣不氣?!!今天晚上終於知道了原因!
首先是設定。
然後看一下這個部落格鏈結,看到這個之後我又看了看資料,發現我的excel**資料是有重複的,重複的資料在更新的時候,就改變不了。
所以我明白了加入id作為主鍵——其實就是序號的重要性。其實這也自動讓我發現了重複的資料。重複的資料是無用的。
altertable 表名 add 列名 int
identity(1,1) not
null
這裡用到了identity關鍵字:indentity(a,b),a b均為正整數,a表示開始數,b表示步長,indentity(1,1)就代表從1開始,每次增加1這樣之後就可以編輯那些null的字段,並且可以儲存成功了。id列刪除也可以,我後來沒有刪除。
2.新學到的sql語句
//新增字段alter
table test add "年份" varchar(20
)alter
table test add "月份" varchar(20
)alter
table test add "日子" varchar(20
)select
*from
test
//將新增的字段填入年、月、日;begindate是日期date格式的資料。最終結果如上圖1所示。
update test set "年份"=
year
(begindate)
update test set "月份"=
month
(begindate)
update test set "日子"=
day(begindate)
資料庫建表的乙個坑
今天在預生產環境配置環境的時候出現了個問題,就是我乙個查詢sql竟然花了17秒,這是乙個嚴重的問題.本來以為是環境的問題,後來發現環境沒問題,那就是我的sql有問題,初步認為是沒有走索引.我把控制台 列印的sql放到預生產環境中直接執行,果然花了10多秒.執行了sql計畫發現確實沒有走索引,但是測試...
乙個小的資料庫操作命令
replace str,from str,to str 其中 str 代表具體的字段,from str 為待替換的值,to str 為替換後的新值。如 要將 table1 中 state 列 values 值由 1 換為 2 replace table1 set state replace stat...
了解乙個A 資料庫的資料
查詢最大的資料表資料樣本 通過expdp,發現匯出的最大表,並進行相應查詢 檢視最大的表的資料案例 將table name替換為最大的表的表名 查詢前100行,了解資料樣本格式 查詢表的資料行數 select count 1 from all tables where owner 327 查詢最大表...