當前位置:首頁 » 編程語言 » 引用資源名稱的sql怎麼寫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

引用資源名稱的sql怎麼寫

發布時間: 2023-01-02 11:12:24

❶ 跨資料庫連表查詢sql語句怎麼寫

工具/材料:Management Studio。

1、首先在桌面上,點擊「Management Studio」圖標。

❷ 一句簡單的SQL語句怎樣寫

SQL伺服器目前最高的版本是2000,但是通常比較常見的是6.5和7.0(包括SP1)。
SQL伺服器如果配置不當,將對NT系統本身造成很大的危害,在一般情況下都可以直接獲得超級用戶的許可權。SQL 2000以前的版本在默認安裝時的密碼均為空,如果在安裝的時候沒有及時修改密碼,無疑是為NT系統打開了一道後門。
流光2001在運行的時候本身不需要SQL的支持,但是如果要對探測的結果加以利用,那麼就必須安裝SQL Server。(不要企圖在Win9.x/Me中安裝)
從流光2001開始,均不再為Win9.x/Me系列開發,如果需要正常使用必須安裝NT/4.0/2000。特別建議安裝Windows 2000 Server。由於流光有自動掛斷的功能,在安裝的時候請安裝遠程服務。
流光對網路資源佔用較大可達到90%(對於撥號),但是對系統資源很小(CPU不超過4%,MEM不超過10M)。從2001版開始對一個網段的掃描採用了新的方法,可以掃描到關於IIS的一些致命漏洞,所以掃描的時間會比前版長。只要下面的進度條沒有停止響應就說明在正常工作中,請不要強行中斷,否則會造成內存泄漏(Memory Leak)。
流光2001的SQL/IPC對國內IP依然保留,也就是說不能掃描國內的IP網段。但是由於IP數據比較早(根據追捕第一版的數據)所以對新增的IP段有遺漏現象(如:61/203/211等),在對這些網段掃描時請三思。
二、SQL Server的准備
安裝完SQL Server後,使用Client Network Utility設置客戶端連接方式為TCP/IP,這樣才能通過TCP/IP協議遠程連接資料庫。如圖:

三、掃描
以掃描一個網段為例,按Ctrl+R激活掃描設置對話框,設置掃描IP段,並且選擇掃描的類型為SQL,如圖:

如果選擇了[常用密碼掃描],整個掃描的速度會變慢,但是成功率會提高。
按下確定後即可對著一個網段進行掃描,這一個時間可能會有3-4分鍾,只要下面的進度條在走,就說明沒有出錯,請耐心等待。掃描的結果如下:

掃描到14台SQL Server,成功得到11個SA。
四、得到SA以後
SA的許可權相當於系統的超級用戶許可權,得到SA之後,有80%的機會得到進一步得到Admnistrators的許可權。
點擊[工具]->SQL遠程命令(或者直接用Ctrl+Q),填入主機、用戶、密碼等信息。
啟動SQL Server中的Query Analyzer工具,填入主機名稱,以及用戶名、密碼。(如果在密碼列表中雙擊選中的項目,可以直接出現命令行界面,而不必手工輸入)

按下[連接],出現遠程命令行的界面:

這樣就可以通過這個工具,就可以查看文件,主機添加/刪除用戶(語法參見IPC部分的說明)。
如:加入一個用戶GoodHacker,密碼為123.
net user GoodHacker 123 /add
將GoodHacker加入Administrator組
net localgroup administrators GoodHacker /add
輸入quit退出此工具。
此方法的成功率為80%,並不是所有的主機都有效。
當然得到資料庫的密碼之後就可以對數據進行查詢、修改、刪除等工作,這涉及到SQL的知識,在這里不作討論。如果有興趣可以查閱有關的資料。
五、其他
在[流光2001]對SQL/IPC/IIS作掃描的時候,會同時掃描IIS的一些典型弱點,並提供一些相關的工具。如下圖:

最左邊的不同顏色的圖標代表不同的類型。
黑色:遠程執行命令
黃色:直接下載對方SAM文件
綠色:將對方SAM文件上傳到一個指定的FTP伺服器
藍色:表示該主機上安裝了FrontPage擴展
紅色:該主機安裝了FrontPage擴展,並且沒有許可權設置。
下面分別對這幾種情況加以說明。
遠程執行命令
選中此類型的主機(即黑色),工具菜單中選擇NT遠程命令(或者直接雙擊該主機)。

在一般情況下不用改變此設置,如果出現了錯誤可以試試選中[允許IIS檢測CMD]選項。按下確定後出現控制界面:

內置的命令:
Local File:<File Name> 從本地的一個文本文件中讀出命令,並且在遠程主機上面逐一執行。相當於執行批處理,只不過這個批處理文件是在本地。
Local Cls 清除屏幕
Local Open 用瀏覽器打開當前的主機
Exit 關閉此工具
上/下鍵重復前一條/後一條命令
輸入命令後回車即可,例如:

直接下載對方SAM文件
選中此類型的主機(即黃色),雙擊即可。如圖:

選擇本的保存的文件名,按[開始]即可下載。

將對方SAM文件上傳到一個指定的FTP伺服器
在使用此項功能的時候,您必須具有一個FTP帳號,並且有寫的許可權(例如申請一個免費的主頁空間)。
選中此類型的主機(即綠色),雙擊即可。如圖:

正確填寫以上各項之後就可以按[開始],進行傳送。
傳送成功後就可以下載到本地了。

FrontPage擴展
如果是藍色圖標,僅僅表明對方主機安裝了FrontPage擴展。
如果是紅色圖標,說明對方安裝了FrontPage擴展,並且沒有設置許可權,也就是說任何人都可以通過FrontPage修改其web頁面

❸ 請教用SQL怎樣引用資料庫的數據

什麼叫驅動?
我做電子地圖是這么做的,sql存儲頂點坐標,落點坐標點的值和該區域的基本信息。然後sql查詢就能篩選一個坐標范圍。
窗體上拖個pictruebox存放cad圖片,用cad圖滑鼠點擊的坐標就可以去查詢資料庫了。從而模擬了一個電子地圖的效果,我從來不用電子地圖第三方控制項。
第一個過程描坐標:建立資料庫表,比如一個長方形區域,起點坐標應該是他左上角,x軸,y軸都是起始位置,落點坐標應該是右下腳,所以在資料庫中除了存儲這個區域的基本信息外還要存儲四個基本值x起始值、x落點、y起始、y落點。
獲得這些值不是靠你去計算,必須寫一個外掛程序,通過滑鼠點擊pictruebox捕捉起點和落點坐標,然後分別更新查詢到數據表,才能准確地記錄每個區域的坐標值。表的格式如下:
區域名稱
|
區域基本信息
...|
x起點
|
y起點
|
x落點
|y落點
|
圖索引
---------------------------------------------------------------------------------------------
圖片a區
|
辦公區域
|
80
|
20
|
140
|
50
|
圖1
-------------------------------------------------------------------------------------------
......
當基礎資料表建立以後,再建立sql視圖,用一個滑鼠點做條件檢索資料庫:
假如捕捉點為(x,y),程序中公開兩個變數public
int
x,y;
select
*
from
基本資料
where
x起點<=x
and
x落點>=x
and
y起點<=y
and
y落點>=y;
這樣通過pictruebox讀取cad圖,描坐標的方法就能用圖形范圍坐標位置檢索小范圍信息。
你可以通過滑鼠點擊來完成,也可以通過滑鼠雙擊縮放圖形,拖動,使用graph類在上面畫圖形,遍歷資料庫,通過區域名稱索引也可以,給圖片坐標范圍著色。

❹ mysql 引用默認值的sql語句怎麼寫

1、如果您打算插入記錄時使用默認值INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
VALUES ({expr | DEFAULT},...),(...),...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]這是mysql增加記錄的SQL語句,在VALUES後面的括弧內使用DEFAULT將會使用默認值最為欄位的值。2、如果您打算讀取某個表欄位的默認值可以使用DESCRIBE {DESCRIBE | DESC} tbl_name [col_name | wild]參考下面的例子mysql> DESCRIBE city;
+------------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+----------+------+-----+---------+----------------+
| Id | int(11) | NO | PRI | NULL | auto_increment |
| Name | char(35) | NO | | | |
| Country | char(3) | NO | UNI | | |
| District | char(20) | YES | MUL | | |
| Population | int(11) | NO | | 0 | |
+------------+----------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

❺ myeclipse鏈接sql資料庫的類的代碼怎麼寫

前期准備工作,安好JDK,MyEclipse。
下載JDBC驅動mysql-connector-java-5.0.5-bin.jar導入到工程中去
1、工程(右鍵)--buildpath--configurebuildpath--addexternaljars。
2、也可以加到classpath中去,具體如下:「我的電腦」->「屬性」->「高級」->「環境變數」,在系統變數那裡編輯classpath,將D:mysql-connector-java-5.0.5mysql-connector-java-5.0.5-bin.jar加到最後,在加這個字元串前要加「;」,以與前一個classpath區分開,然後確定。
測試代碼:所用驅動mysql-connector-java-5.0-nightly-20071116-bin.jar
程序中引用必要的包:importjava.sql.*;//它包含有操作資料庫的各個類與介面
1、載入合適的JDBC驅動程序
Class.forName(Driver);
MySQL驅動程序:com.mysql.jdbc.Driver
Oracle驅動程序:oracle.jdbc.driver.OracleDriver
SQLServer驅動程序:
com.Microsoft.jdbc.sqlserver.SQLServerDriver
2、建立資料庫連接
與MySQL資料庫連接的方法:
Connectioncon=DriverManager.getConnection(「jdbc:mysql://主機IP或主機名:3306/資料庫名」,用戶名,密碼);
java.sql.DriveManager用來處理裝載驅動程序並且為創建新的資料庫連接提供支持;
–java.sql.Connection用於完成對特定定資料庫的連接;
–java.sql.Statement用於對特定的資料庫執行SQL語句;java.sql.Statement又包含了以下兩個重要的子類型:
java.sql.PreparedStatement用於執行預編譯的SQL語句;
java.sql.CallableStatement用於執行資料庫中存儲的過程的調用;
--java.sql.ResultSet用於保存查詢所得的結果集
3、創建Statement對象
Statementst=con.createStatement();//最後可以不關閉,但推薦關閉
利用Statement對象可以執行靜態SQL語句,靜態SQL語句可以是Select語句、Delete語句、Update語句和Insert語句。
執行SQL語句
Statement介面提供了三種執行SQL語句的方法:executeQuery()、executeUpdate()和execute()。具體使用哪一個方法由SQL語句本身來決定。
方法executeQuery用於產生單個結果集的語句,例如SELECT語句等。
方法executeUpdate用於執行INSERT、UPDATE或DELETE語句以及SQLDDL(數據定義語言)語句,例如CREATETABLE和DROPTABLE。INSERT、UPDATE或DELETE語句的效果是修改表中零行或多行中的一列或多列。executeUpdate的返回值是一個整數,指示受影響的行數(即更新計數)。對於CREATETABLE或DROPTABLE等不操作行的語句,executeUpdate的返回值總為零。
方法execute用於執行返回多個結果集、多個更新計數或二者組合的語句。一般不會需要該高級功能。
①JDBC在編譯時並不對將要執行的SQL查詢語句作任何檢查,只是將其作為一個String類對象,直到驅動程序執行SQL查詢語句時才知道其是否正確。對於錯誤的SQL查詢語句,在執行時將會產生SQLException。
②一個Statement對象在同一時間只能打開一個結果集,對第二個結果集的打開隱含著對第一個結果集的關閉。
③如果想對多個結果集同時操作,必須創建出多個Statement對象,在每個Statement對象上執行SQL查詢語句以獲得相應的結果集。
④如果不需要同時處理多個結果集,則可以在一個Statement對象上順序執行多個SQL查詢語句,對獲得的結果集進行順序操作。
str="insertintocustomervalues('wangyang',24,'beijing','[email protected]')";
intrecordNumber=st.executeUpdate(str);執行executeUpdate()方法返回該SQL語句涉及的記錄數。
str="select*frommycustomer";//查詢表中記錄
ResultSetrs=st.executeQuery(str);由於SQL語句是select,用executeQuery()方法,返回一個結果集保存在ResultSet對象rs中。
4、分析ResultSet對象
①執行完畢SQL語句後,將返回一個ResultSet類的對象,它包含所有的查詢結果。但對ResultSet類的對象方式依賴於游標(Cursor)的類型,而對每一行中的各個列,可以按任何順序進行處理(當然,如果按從左到右的順序對各列進行處理可以獲得較高的執行效率);
ResultSet類中的Course方式主要有:
ResultSet.TYPE_FORWARD_ONLY(為預設設置):游標只能前進不能後退,也就是只能從第一個一直移動到最後一個。
ResultSet.TYPE_SCROLL_SENSITIVE:允許游標前進或後退並感應到其它ResultSet的游標的移動情形。
ResultSet.TYPE_SCROLL_INSENSITIVE:允許游標前進或後退並不能感應到其它ResultSet的游標的移動情形。
ResultSet類中的數據是否允許修改主要有:
ResultSet.CONCUR_READ_ONLY(為預設設置):表示數據只能只讀,不能更改。
ResultSet.CONCUR_UPDATABLE:表示數據允許被修改。
可以在創建Statement或PreparedStatement對象時指定ResultSet的這兩個特性。
Statementstmt=con.createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_READ_ONLY);

PreparedStatementpstmt=con.PrepareStatement("insertintobookTablevalues(?,?,?)",ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
②ResultSet類的對象維持一個指向當前行的指針,利用ResultSet類的next()方法可以移動到下一行(在JDBC中,Java程序一次只能看到一行數據),如果next()的返回值為false,則說明已到記錄集的尾部。另外JDBC也沒有類似ODBC的書簽功能的方法。
③利用ResultSet類的getXXX()方法可以獲得某一列的結果,其中XXX代表JDBC中的Java數據類型,如getInt()、getString()、getDate()等。訪問時需要指定要檢索的列(可以採用int值作為列號(從1開始計數)或指定列(欄位)名方式,但欄位名不區別字母的大小寫)。
示例:
while(rs.next()){
intid=rs.getInt("id");
Stringname=rs.getString("cName");
intage=rs.getInt("cAge");
Stringaddress=rs.getString("cAddress");
Stringemail=rs.getString("cEmail");
System.out.println(id+""+name+""+age+""+address+""+email);
}
獲得結果集中的結構信息:利用ResultSet類的getMetaData()方法來獲得結果集中的一些結構信息(主要提供用來描述列的數量、列的名稱、列的數據類型。利用ResulSetMetaData類中的方法)。
ResultsetMetaDatarsmd=rs.getMetaData();
rsmd.getColumnCount();//返回結果集中的列數
rsmd.getColumnLabel(1);//返回第一列的列名(欄位名)
例如:
Statementstmt=con.createStatement();
ResultSetrs=stmt.executeQuery("select*fromTableName");
for(inti=1;i<=rs.getMetaData().getColumnCount();i++)//跟蹤顯示各個列的名稱
{System.out.print(rs.getColumnName(i)+" ");
}
while(rs.next())
{//跟蹤顯示各個列的值
for(intj=1;j<=rs.getMetaData().getColumnCount();j++)
{System.out.print(rs.getObject(j)+" ");
}
}
5、關閉連接
(注意關閉的順序)例:
rs.close();
st.close();
con.close()
6、JDBC的常用API
一、Connection介面:
1.createStatement():創建資料庫連接
2.prepareStatement(Stringsql):創建預處理語句
3.prepareCall(Stringsql):創建可調用語句
4.getAutoCommit():獲取自動提交的模式
5.setAutoCommit():設置自動提交的模式
6.commit():提交所執行的SQL語句
7.rollback():回滾所執行的SQL語句
8.getMetaData():獲取一個DatabaseMetaData對象,該對象包含了有關資料庫的基本信息
9.close():關閉資料庫連接
10.isClose():判斷資料庫連接是否超時或被顯示關閉
二、Statement介面:
1.execute(Stringsql):執行SQL語句,如果返回值是結果集則為true,否則為false
2.executeQuery(Stringsql):執行SQL語句,返回值為ResultSet
3.executeUpdate(Stringsql):執行SQL語句,返回值為所影響的行數
4.addBatch(Stringsql):向當前Statement對象的命令列表中添加新的批處理SQL語句
5.clearBatch():清空當前Statement對象的命令列表
6.executeBatch():執行當前Statement對象的批處理語句,返回值為每個語句所影響的函數數組
7.getConnection():返回創建了該Statement對象的Connection對象
8.getQueryTimeout():獲取等待處理結果的時間
9.setQueryTimeout():設置等待處理結果的時間
三、ResultSet介面:
1.first()/beforeFirst():將游標移動到ResultSet中第一條記錄(的前面)
2.last()/afterLast():將游標移動到ResultSet中最後一條記錄(的後面)
3.absolute(intcolumn):將游標移動到相對於第一行的指定行,負數則為相對於最後一條記錄
4.relative(introws):將游標移動到相對於當前行的第幾行,正為向下,負為向上
5.next():將游標下移一行
6.previous():將游標上移一行
7.insertRow():向當前ResultSet和資料庫中被插入行處插入一條記錄
8.deleteRow():將當前ResultSet中的當前行和資料庫中對應的記錄刪除
9.updateRow():用當前ResultSet中已更新的記錄更新資料庫中對應的記錄
10.cancelUpdate():取消當前對ResultSet和資料庫中所做的操作
11.findColumn(StringcolumnName):返回當前ResultSet中與指定列名對應的索引
12.getRow():返回ResultSet中的當前行號
13.refreshRow():更新當前ResultSet中的所有記錄
14.getMetaData():返回描述ResultSet的ResultSetMetaData對象
15.isAfterLast():是否到了結尾
16.isBeforeFirst():是否到了開頭
17.isFirst():是否第一條記錄
18.isLast():是否最後一條記錄
19.wasNull():檢查列值是否為NULL值,如果列的類型為基本類型,且資料庫中的值為0,那麼
這項檢查就很重要。由於資料庫NULL也返回0,所以0值和資料庫的NULL不能區分。如果列的類型為對象,可以簡單地將返回值與null比較
20.close():關閉當前ResultSet
四、ResultSetMetaData介面:
1.getColumnCount():返回ResultSet中列的數目
2.getColumnName():返回列在資料庫中的名稱
3.getColumnType():返回列的SQL類型
4.isReadOnly():表示該數據項是否為只讀值
5.isNullable():表示該列是否可以存儲NULL

示例:

importjava.sql.*;

publicclassJDBCTest{

publicstaticvoidmain(String[]args){

//驅動程序名
Stringdriver="com.mysql.jdbc.Driver";

//URL指向要訪問的資料庫名scutcs
Stringurl="jdbc:mysql://127.0.0.1:3306/test";

//MySQL配置時的用戶名
Stringuser="root";

//MySQL配置時的密碼
Stringpassword="123456";

try{
//載入驅動程序
Class.forName(driver);

//連續資料庫
Connectionconn=DriverManager.getConnection(url,user,password);

if(!conn.isClosed())
System.out.println("!");

//statement用來執行SQL語句
Statementstatement=conn.createStatement();

//要執行的SQL語句
Stringsql="select*frompet";

//結果集
ResultSetrs=statement.executeQuery(sql);

System.out.println("-----------------");


Stringname=null;

while(rs.next()){

//選擇sname這列數據
name=rs.getString("name");

//首先使用ISO-8859-1字元集將name解碼為位元組序列並將結果存儲新的位元組數組中。
//然後使用GB2312字元集解碼指定的位元組數組
name=newString(name.getBytes("ISO-8859-1"),"GB2312");

//輸出結果
System.out.println(rs.getString("ID")+" "+name);
}

rs.close();
conn.close();

}catch(ClassNotFoundExceptione){


System.out.println("Sorry,can`tfindtheDriver!");
e.printStackTrace();


}catch(SQLExceptione){


e.printStackTrace();


}catch(Exceptione){


e.printStackTrace();


}
}
}

❻ 請教用SQL怎樣引用資料庫的數據

使用MySQL開發包,在MySQL安裝目錄裡面有一個include目錄。裡麵包含了需要的C++頭文件
主要包含
#include <iostream>
#include <mysql/mysql.h>//根據自己目錄設定mysql頭文件
MYSQL mysql;
std::string db_host = "127.0.0.1";//MySQL伺服器地址
std::string db_user = "root";//用戶名
std::string db_pwd = "rootpwd";//密碼
std::string db_name = "test_db";//訪問資料庫名

mysql_init(&mysql);//初始化MySQL對象
if(!mysql_real_connect(&mysql, db_host.c_str(), db_user.c_str(), db_pwd.c_str(), db_name.c_str(), 3306, NULL, 0))//連接MySQL伺服器
{
mysql_close(&mysql);
return 0;
}
mysql_query(&mysql, "SET NAMES 'gbk'");//設置中文字元集

db_host就是MySQL伺服器IP地址,字元串,C++連接MySQL伺服器其實不分本地或者遠程的,的都是按照連接伺服器來的,本地伺服器的就是127.0.0.1

❼ 資料庫SQL查詢語句的編寫

select max(id) from 表 where num=100;--查最大ID

select * from 表 where id =(select max(id) from 表 where num=100) and num=100;--查id最大並且num為100的那條數據
SQL SELECT 語句
SELECT 語句用於從表中選取數據。
結果被存儲在一個結果表中(稱為結果集)。
SQL SELECT 語法
SELECT 列名稱 FROM 表名稱

以及:
SELECT * FROM 表名稱

注釋:SQL 語句對大小寫不敏感。SELECT 等效於 select。

❽ 創建索引的sql語句怎麼寫

1、CREATE [UNIQUE|CLUSTERED] INDEX INDEX_NAME ON TABLE_NAME(PROPERTY_NAME)
2、其中UNIQUE和CLUSTERED為可選項,分別是建立唯一索引和聚簇索引,具體解釋為:
UNIQUE:表示此索引的每一個索引值只對應唯一的數據。
3、CLUSTERED:表示要建立的索引時聚簇索引,即索引項的順序與表中記錄的物理順序一致的索引組織。

拓展:

1、SQL語言,是結構化查詢語言(StructuredQueryLanguage)的簡稱。SQL語言是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統;同時也是資料庫腳本文件的擴展名。

2、SQL語言是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同資料庫系統可以使用相同的結構化查詢語言作為數據輸入與管理的介面。SQL語言語句可以嵌套,這使他具有極大的靈活性和強大的功能。

3、結構化查詢語言SQL(STRUCTURED QUERY LANGUAGE)是最重要的關系資料庫操作語言,並且它的影響已經超出資料庫領域,得到其他領域的重視和採用,如人工智慧領域的數據檢索,第四代軟體開發工具中嵌入SQL的語言等。

❾ 請問,用資源文件配置非默認實例名的sql2012連接的url是怎麼寫的

估計是埠問題,看看你現在的埠是不是:1433