當前位置:首頁 » 數據倉庫 » 資料庫n1
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

資料庫n1

發布時間: 2022-11-30 10:52:57

㈠ 怎麼讓oracle資料庫的主鍵自增

建立一個序列啊,每次從序列中取值,提醒一下插入值的時候不要插入主鍵,用一個觸發器自動插入主鍵的值,給你我的一個案例
CREATE OR REPLACE TRIGGER CRC_028_INOUT_SUMMARY_T(觸發器名)
BEFORE INSERT ON CRC_028_INOUT_SUMMARY(表名稱)
FOR EACH ROW
DECLARE
L_SUMMARY_ID NUMBER := 0;
BEGIN
-- CRC_028_INOUT_SUMMARY_S 是序列名
SELECT CRC_028_INOUT_SUMMARY_S.NEXTVAL INTO L_SUMMARY_ID FROM DUAL;
:NEW.SUMMARY_ID := L_SUMMARY_ID;
END;
好好看看,可以參考我的博客:http://blog.csdn.net/u013101979/article/details/64540630
Oracle序列的概念:
序列是一資料庫對象,利用它可生成唯一的整數。一般使用序列自動地生成主碼值(類似於Mysql中的主鍵auto_increment屬性)

有時候我們定義某張表其中某一列為主鍵,當我們往標中插入數據的時候,對於主鍵欄位的賦值要求唯一性,我們希望能有個自增類型的資料庫對象,我們每獲取一次它就自動增長,保證下次獲取的時候肯定是不一樣的值,序列既是這種Oracle對象。
create sequence sequence_name [increment by n1, start with n2 ,maxvalue n3, cache n , nocache .....]
從序列取值:sequence_name.CURRVAL(取當前值) sequence_name.NEXTVAL(取下一條值)
更改序列的定義: alter sequence_name sequence definition;

屬性cache的指定:

如果指定CACHE值,Oracle就可以預先在內存裡面放置一些Sequence,這樣存取的快些。
cache裡面的取完後,Oracle自動再取一組到cache。使用cache或許會跳號, 比如資料庫突然不正常down掉(shutdown abort)
cache中的Sequence就會丟失。
舉個例子:比如你的sequence中cache 100,那當你sequence取到90時突然斷電,那麼在你重啟資料庫後,sequence的值將從101開始。
如果指定NOCACHE值,Oracle就不會預先在內存裡面存放Sequence,當然這也就可以避免資料庫不正常down掉的sequence丟失。
不過會產生一些問題:創建nocache sequence在高並發訪問時,容易導致row cache lock等待事件
主要原因是每次獲取nextval時都需要修改rowcache中的字典信息。使用nocache sequence,還會導致如下問題:
由於每次修改字典信息都需要commit,可能導致log file sync等待,nocache sequence在RAC環境下
會對基於sequence生成的列創建的索引造成實例間大量索引塊爭用。基於以上問題,避免創建nocache sequence。

創建序列的語法,序列是和表一樣的對象要指定它的用戶
CREATE SEQUENCE sequence
[INCREMENT BY n] -- 自增的公差,默認為1
[START WITH n] -- 起始值
[{MAXVALUE n | NOMAXVALUE}] -- 最大值
[{MINVALUE n | NOMINVALUE}] -- 最小值
[{CYCLE | NOCYCLE}] -- 循環
[{CACHE n | NOCACHE}]; -- 緩存

從序列取值: CURRVAL 取當前值, NEXTVAL取下一個值

更改序列的定義:
ALTER SEQUENCE dept_deptid_seq
INCREMENT BY 20
MAXVALUE 999999
NOCACHE NOCYCLE;

㈡ VB怎樣使用多參數資料庫函數讓結果顯示在文本框中

Dim
sql
as
string
=
"select
K,sum(COL1),avg(COL2)
from
J
where
N1=n1
and
N2=n2
and
N3=n3
group
by
K"
COL1是你要求和的欄位,COL2是你要求平均的欄位,你可以繼續加
執行這句sql返回的結果就是你要的東西了
例如
K
COL1
COL2
N1
N2
N3
1
1
1
1
1
1
1
2
2
1
1
1
2
1
1
1
1
1
2
2
2
1
1
1
會得到
1
3
1.5
2
3
1.5
怎麼用
文本框
顯示...
就看你自己需要把那個值放哪個控制項了
還有疑問嗎

㈢ 在SQL語句中 怎麼在不考慮年份的情況下,選擇一段日期

這個問題同時間的比較類似,只需將月日轉換為對應的小數,通過數值比較就不會出現邏輯問題。
假設資料庫中日期欄位為 n1和n2 則對應語句可以寫為:

where convert(float,datename(month,n1)+'.' +datename(day,n1)) - convert(float,datename(month,n2)+'.' +datename(day,n2)) < 0

㈣ 關於資料庫的問題 若表A有m1行n1列,表B有m2行n2列則語句select*from A,B得到

不對
兩張表關聯查詢時,如果沒有限制條件,會產生笛卡爾乘積,行數=m1乘m2行,列數=n1+n2-重復列
比如scott用戶下的emp和dept表
select * from emp; ---14行8列
select * from dept; ---4行4列
select * from emp,dept; --56行ll列

㈤ 易語言如何讀出資料庫中相同名稱的數量假如資料庫中有N個姓名為小張,如何知道N為多少

這是以前寫給別人的,稍微改改就能用

.版本 2.支持庫 PBShell.程序集 窗口程序集1.子程序 _按鈕1_被單擊.局部變數 單位, 單位信息, , "0".局部變數 n1, 整數型.局部變數 姓名計次, 整數型.局部變數 局部單位, 單位信息置當前庫 (「測試資料庫.edb」)跳到 (1).計次循環首 (取記錄數 (), n1) .計次循環首 (取數組成員數 (單位), 姓名計次) .判斷開始 (單位 [姓名計次].姓名 = 讀 (1)) 跳出循環 () .默認 .判斷結束 .計次循環尾 () .判斷開始 (姓名計次 > 取數組成員數 (單位)) 局部單位.姓名 = 讀 (1) 局部單位.所有收入 = 讀 (2) 加入成員 (單位, 局部單位) .默認 單位 [姓名計次].所有收入 = 單位 [姓名計次].所有收入 + 讀 (2) .判斷結束 跳過 ().計次循環尾 ().計次循環首 (取數組成員數 (單位), n1) 列表框1.加入項目 (單位 [n1].姓名 + 「:他的總收入為」 + 到文本 (單位 [n1].所有收入) + 「元」, ).計次循環尾 ().子程序 __啟動窗口_創建完畢打開 (取特定目錄 (3) + 「測試資料庫.edb」, , , , , , )嘿嘿 怎麼樣是不是很簡單啊

㈥ 資料庫空間不足怎麼解決

一、用戶資料庫搬家
操作方法有以下兩種
方法1:在企業管理器中進行
(1)在企業管理器中選定要搬家的資料庫名,在其上單擊滑鼠右鍵,出現如圖1所示對話框。
(2)選中「所有任務」,在其子菜單中單擊「分離資料庫」。
(3)將該資料庫的數據文件和日誌文件從舊的位置(如D:\MSSQL\Data)拷貝到新的位置(如E:\SQLDataNew)。
(4)再在企業管理器中選中「資料庫」文件夾,在其上單擊滑鼠右鍵,在出現的對話框中選中「所有任務」,在其子菜單中單擊「附加資料庫」。
(5)在出現的「附加資料庫」對話框中,選擇資料庫的兩個文件的新位置。
方法2:用SQL系統存儲過程sp_detach_db/sp_attach_db實現
(1)使用下面語句分離資料庫:
USE master
GO
EXEC sp_detach_db 'mydb'
GO
(2)將該資料庫的數據文件和日誌文件從舊的位置拷貝到新的位置。
(3)使用下面語句重新附加資料庫:
USE master
GO
EXEC sp_attach_db
'mydb', 'E:\SQLDataNew\mydbdata.mdf', 'E:\SQLDataNew\mydblog.ldf''
GO
二、系統資料庫搬家
1.master資料庫搬家
(1)由於SQL Server每次啟動的時候都需要讀取master資料庫,因此必須在企業管理器中改變SQL Server啟動參數中master數據文件和日誌文件的路徑。
在 SQL Server屬性的「常規」選項卡下面有一個叫做「啟動參數」的按鈕,單擊後可以看到所示的界面。
其中,-d用來指定master資料庫文件的路徑,而–l用來指定master資料庫日誌文件的路徑。
刪除舊的master資料庫文件和日誌文件的路徑,添加新的master數據文件和日誌文件所在的路徑,如:
-dE:\ SQLDataNew \master.mdf
-lE:\ SQLDataNew \mastlog.ldf
(2)停止SQL Server服務,將master.mdf文件和mastlog.ldf文件拷貝到新的位置,如E:\ SQLDataNew文件夾中。
(3)重新啟動服務即可。
小技巧:如果在「啟動參數」添加的master資料庫文件和日誌文件的路徑或文件名有誤,就會造成SQL Server啟動不起來。而此時想改正錯誤又因SQL Server啟動不了而重設不了「啟動參數」。其實這兩個文件路徑和文件名是放置在注冊表HKEY_LOCAL_MACHINE\SOFWARE\Microsoft\Miccrosoft SQL Server\你安裝SQL伺服器的名\MSSQLServer\Parrmeters下的參數SQLArg1和SQLArg2中,修改這兩個參數的值即可。
2. msdb資料庫和model資料庫搬家
(1)對於msdb資料庫和model資料庫,我們不能在企業管理器中實現分離和附加,只能用sp_detach_db和sp_attach_db存儲過程來分離和附加這兩個資料庫。
其中,對於msdb資料庫,還應確保SQL Server代理當前沒有運行,否則sp_detach_db存儲過程將運行失敗,並返回如下消息:
「無法除去資料庫 'msdb' ,因為它當前正在使用。」
(2)調出如圖4所示的「啟動參數」對話框,添加新參數-T3608。這樣,啟動SQL Server,它就不會恢復除master之外的任何資料庫。
(3)重新啟動SQL Server,再用下面命令分離msdb或者model資料庫:
EXEC sp_detach_db 'msdb'
GO
(4)將數據文件和日誌文件移到新的位置,然後再用下面命令重新附加msdb資料庫或者model資料庫:
USE master
GO
EXEC sp_attach_db
'msdb', 『E:\SQLDataNew\msdbdata.mdf', ' E:\SQLDataNew\msdblog.ldf '
GO
(5)在企業管理器中,從「啟動參數」框中刪除-T3608跟蹤標記,再停止並重新啟動SQL Server。
3. tempdb資料庫搬家
對於tempdb資料庫,則可以直接使用ALTER DATABASE語句來為數據文件和日誌文件指定新的存放位置,如下所示:
USE master
GO
ALTER DATABASE tempdb MODIF
Y FILE (NAME=tempdev, FILENAME ='E:\SQLDataNew \tempdb.mdf')
GO
ALTER DATABASE tempdb MODIF
Y FILE(NAME=templog, FILENAME=
' E:\SQLDataNew \templog.ldf')
GO
至此,SQL Server 中資料庫全部搬家完成。

㈦ 資料庫查詢並輸出指定欄位

Rs1_cmd.CommandText = "SELECT * FROM rili where nian=n1 and ye=y1 and ri=r1"
改成
Rs1_cmd.CommandText = "SELECT * FROM rili where nian='" & n1 & "'" & " and ye='" & y1 & "' and ri='" & r1 & "'"

㈧ 在java中如何取出資料庫表中某行的數據

limit
限制的是從第幾行開始,mysql
默認的有0行

limit
3,1;是從第四行開始,步長為1.希望能幫助你。

㈨ n11資料庫武器怎麼修改

鏈接資料庫 在文件夾裡面找到N11.exe,雙擊打開,出現資料庫管理界面,然後點鏈接,在鏈接裡面選擇MySQL資料庫。
n11數據程式管理工具是一款功能強大的Mysql資料庫管理工具,能夠幫助用戶更好的進行各種資料庫的圖形化管理,提高管理效率,包括創建數據表、觸發器、存儲過程、函數等。

㈩ n1 data下載數據傳輸出錯

換新版本刷機工具和win7操作系統刷成功了,沒win7系統可以在VMware裡面裝個win7再進行刷機,我在通過DATA控制項進行資料庫操作時!在添加新記錄時,
如果一次輸入全部數據時,在保存時會出錯提示如下:
「運行時錯誤『3426』該操作被關聯對象取消!」
保存的代碼如下:

On Error GoTo SAVEERR
Data1.Recordset.Update
Data1.Recordset.Bookmark = Data1.Recordset.LastModified
SAVEERR:
'NOTHING

'**************************************************
DATA1 ERROR 事件如下:
Private Sub Data1_Error(DataErr As Integer, Response As Integer)
MsgBox "數據錯誤事件命中錯誤:" & Error$(DataErr)
Response = 0 '忽略錯誤
End Sub
'*********************************
DATA1。VALIDATE事件如下
Private Sub Data1_Validate(Action As Integer, Save As Integer)
Select Case Action
Case vbDataActionMoveFirst
Case vbDataActionMovePrevious
Case vbDataActionMoveNext
Case vbDataActionMoveLast
Case vbDataActionAddNew
Case vbDataActionUpdate
Case vbDataActionDelete
Case vbDataActionFind
Case vbDataActionBookmark
Case vbDataActionClose
End Select
Screen.MousePointer = vbHourglass
End Sub