用關聯查詢就好了
SELECT t1.trainid,t1.trainkind,t1.traintype,t2.repairdate,t2.repairstaion FROM
traininfo t1 JOIN trainrepair t2 ON t1.trainid=t2.trainid
⑵ sql腳本怎麼寫
update table set amount_actual = ( volume*price*10000/1.06)/10000
注意,『/ 』是截斷值
⑶ 什麼是SQL腳本
SQL腳本:生成資料庫項目時,預先部署腳本、資料庫對象定義和後期部署腳本合並為一個生成腳本。
只能指定一個預先部署腳本和一個後期部署腳本,但可在預先部署腳本和後期部署腳本中包含其他腳本。
用於創建資料庫對象的語句的集合。Transact-SQL腳本保存為文件,文件名通常以 .sql結尾。
具體使用環境包含:MY-SQL,SQLServer,oracle。
資料庫腳本包含:存儲過程[Procere],事務[transaction]等,索引[Index],觸發器[Trigger],函數[Function]等。
使用腳本的好處:可以提高數據訪問的效率,並進行相關的數據處理。
(3)sql腳本編寫擴展閱讀
SQL具有數據定義、數據操縱和數據控制。
1、SQL數據定義功能:能夠定義資料庫的三級模式結構,即外模式、全局模式和內模式結構。在SQL中,外模式有叫做視圖(View),全局模式簡稱模式( Schema),內模式由系統根據資料庫模式自動實現,一般無需用戶過問。
2、SQL數據操縱功能:包括對基本表和視圖的數據插入、刪除和修改,特別是具有很強的數據查詢功能。
3、SQL的數據控制功能:主要是對用戶的訪問許可權加以控制,以保證系統的安全性。
⑷ plsql怎樣編寫腳本
plsql怎樣編寫腳本
1.將以上內容存為shortcuts.txt,復制到X:\Program Files\PLSQL Developer\PlugIns目錄下,Win7要注意許可權
2.菜單中選 Tools -> Perferences -> Editor -> Autoreplaces
3.重啟PL/SQL Developer,輸入等號左側縮寫按下「空格」,會自動補全,那個效率啊;)
⑸ 如何編寫一個mysql資料庫腳本
導出正式伺服器的資料庫和測試伺服器資料庫,並按照指定格式命名。
打開Beyond
Compare軟體,如圖,選擇文本比較,進入到文本比較主界面之後
,如圖選擇要比較的sql文件,然後,軟體會呈現出如圖資料庫結構的不同之處。
即使在比較出兩個資料庫的結構不同之後,對於sql語句的小白來說,很難寫出升級資料庫的升級腳本,下面我們將講解如何利用mysql
workbench來幫你寫sql。
首先,在本地資料庫創建test和release資料庫,創建步驟如圖所示。然後,將第二步導出的資料庫分別導入到新建的資料庫,接下來就可以對release資料庫動手了。
下面以增加資料庫表的一個欄位為例,講解sql語句的生成。由圖中的7個步驟,便可以得到對一個表增加一個欄位的sql語句,對表欄位的增刪改,對表內容的增刪改操作,刪除表操作類似可得。下面講如何得到新建一個表的sql語句。
如圖,便可得到創建表的語句。
上述的sql語句的集合便是資料庫生成腳本,腳本通常是在workbench裡面編輯查看和執行的,幾個基本按鈕的使用如圖。
執行完上述sql腳本之後,正式伺服器的資料庫和測試伺服器的資料庫結構除了主鍵自增值,host差異之外,其餘內容應全部相同,如果不是,則調整腳本內容,直至兩個資料庫的結構相同為止。
此時的資料庫升級腳本仍為資料庫升級暫時腳本,臨時腳本需交由項目負責人審核檢查之後,按照:工程名+版本+時間+正式+資料庫升級腳本.sql保存,並上傳svn,用於新版本發布。
⑹ 請教,怎樣編寫一個創建表的的sql腳本
USE 資料庫名 CREATE TABLE 表名 (列名 類型(大小) DEFAULT'默認值', 列名 類型(大小) DEFAULT'默認值', 列名 類型(大小) DEFAULT'默認值', ... ...); 比如: create table emp( id int, ename varchar(30), age int, job varchar(20));
⑺ sql語句寫腳本,大神請進
selectt1.*from
(selectt.*,row_number()over(orderbyid)rnfrom
(SELECTTOP1000[Name]
,[CtfId]
,[Gender]
,[Birthday]
,[Address]
,[Mobile]
,[Tel]
,[Fax]
,[EMail]
,[Family]
,[Version]
FROM[1234567].[dbo].[cdsgus])t)t1
wherernbetween500and700
其實後邊有個id里,你可以根據那個來查
⑻ 幫忙寫一條簡單的sql腳本
創建幾個測試表
createtabletableA
(namevarchar(10),
ageint,
sexvarchar(2),
timedatetime,
isinsertvarchar(10))
insertintotableAvalues('jack',11,'男','2005-12-04','False')
insertintotableAvalues('moon',12,'女','2013-12-04','False')
insertintotableAvalues('john',22,'男','2005-12-04','False')
insertintotableAvalues('emma',55,'女','2005-12-04','False')
select*intotableBfromtableAwhere1<>1
執行
declare@timevarchar(10)
select@time=convert(varchar(10),getdate(),120)
insertintotableBselect*fromtableAwhereconvert(varchar(10),time,120)=@time
updatetableAsetisinsert='True'whereconvert(varchar(10),time,120)=@time
結果
⑼ sql文件中如何編寫循環建表的腳本
如果資料庫中已經存在test表則,將其drop掉,
if exists (select * from dbo.Sysobjects where id='test' and OBJECTPROPERTY(OBJECT_ID('test'),'IsTable')=1 )
drop table test
--新建資料庫
create table test
(
id int
)
declare @i int,@num int --定義變數用來存儲循環初始值和結束值
select @i=1,@num=1000
while (@i<=@num) ---進入循環
begin
insert into test values(@i)
select @i+=1
end
select * from test
drop table test --刪除實體表,如果程序真用則就不要刪除了!