日本好好热aⅴ|国产99视频精品免费观看|日本成人aV在线|久热香蕉国产在线

  • <cite id="ikgdy"><table id="ikgdy"></table></cite>
    1. 西西軟件下載最安全的下載網(wǎng)站、值得信賴的軟件下載站!

      首頁(yè)西西教程數(shù)據(jù)庫(kù)教程 → oracle數(shù)據(jù)庫(kù)連接方式實(shí)例、數(shù)據(jù)庫(kù)連接查詢SQL語(yǔ)句

      oracle數(shù)據(jù)庫(kù)連接方式實(shí)例、數(shù)據(jù)庫(kù)連接查詢SQL語(yǔ)句

      相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來(lái)源:西西整理時(shí)間:2012/12/18 21:42:35字體大。A-A+

      作者:西西點(diǎn)擊:0次評(píng)論:0次標(biāo)簽: oracle數(shù)據(jù)庫(kù)

      • 類型:數(shù)據(jù)庫(kù)類大。25.3M語(yǔ)言:中文 評(píng)分:2.0
      • 標(biāo)簽:
      立即下載

      安裝了Oracle Db Provider后Oracle.DataAccess.dll的路徑是:D:\app\Administrator\product\11.2.0\client_1\ODP.NET\bin\2.x
      
      下面演示了使用OleDb, msdaora, System.Data.OracleClient.OracleConnection, Oracle.DataAccess.Client.OracleConnection 以及用DbProviderFactories.GetFactory方式來(lái)獲取Connection
      
      另外如果是64位操作系統(tǒng),需要安裝64位的驅(qū)動(dòng)
      
      代碼如下:
      

      using System; using System.Data; using System.Data.Common; namespace Wintest { class Program { static void Main(string[] args) { ShowAllDbProviderFactories(); string connString; /* ole db provider */ connString = "Provider=OraOledb.Oracle;Data Source=xe;User ID=sa;Password=jack2008;"; using (DbConnection conn = new System.Data.OleDb.OleDbConnection(connString)) { TestConnection(conn); } connString = "Provider=OraOleDb.Oracle.1;Data Source=xe;User ID=sa;Password=jack2008;"; using (DbConnection conn = new System.Data.OleDb.OleDbConnection(connString)) { TestConnection(conn); } /* ms oracle provider, it is x86 version */ //connString = "Provider=msdaora;Data Source=xe;User ID=sa;Password=jack2008;"; //using (DbConnection conn = new System.Data.OleDb.OleDbConnection(connString)) //{ // TestConnection(conn); //} connString = "Data Source=xe;User ID=sa;Password=jack2008;"; using (DbConnection conn = new System.Data.OracleClient.OracleConnection(connString)) { TestConnection(conn); } connString = "Data Source=xe;User ID=sa;Password=jack2008;"; using (DbConnection conn = new Oracle.DataAccess.Client.OracleConnection(connString)) { TestConnection(conn); } string providerInvariantName; providerInvariantName = "Oracle.DataAccess.Client"; connString = "Data Source=xe;User ID=sa;Password=jack2008;"; UseDbProviderFactoryGetConnection(providerInvariantName,connString); providerInvariantName = "System.Data.OracleClient"; connString = "Data Source=xe;User ID=sa;Password=jack2008;"; UseDbProviderFactoryGetConnection(providerInvariantName, connString); //connString = "Data Source=xe;User ID=sa;Password=jack2008;"; //DbProviderFactory factory = DbProviderFactories.GetFactory(""); //using (DbConnection conn = factory.CreateConnection()) //{ // conn.ConnectionString = connString; // TestConnection(conn); //} Console.WriteLine("go"); Console.ReadLine(); } private static void ShowAllDbProviderFactories() { /* all Db Provider Factory */ DataTable dtFactory = DbProviderFactories.GetFactoryClasses(); Console.WriteLine("------------------------------------"); foreach (DataRow row in dtFactory.Rows) { //for (int i = 0; i < dtFactory.Columns.Count; i++) //{ // Console.Write("{0}\t", row[i]); //} Console.Write("{0}\t{1}", row[2], row[3]); Console.WriteLine(); } } private static void UseDbProviderFactoryGetConnection(string providerInvariantName, string connString) { DbProviderFactory factory = DbProviderFactories.GetFactory(providerInvariantName); using (DbConnection conn = factory.CreateConnection()) { conn.ConnectionString = connString; TestConnection(conn); } } private static void TestConnection(DbConnection conn) { Console.WriteLine("------------------------------------"); string sql = "SELECT * FROM dept"; DbCommand cmd = conn.CreateCommand(); cmd.CommandText = sql; cmd.CommandType = CommandType.Text; conn.Open(); using (IDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { Console.WriteLine("{0}\t{1}\t{2}", dr[0], dr[1], dr[2]); } } conn.Close(); } private static void AddParameter(DbCommand cmd, string paramName, object paramValue) { DbParameter p = cmd.CreateParameter(); p.ParameterName = paramName; p.Value = paramValue ?? DBNull.Value; cmd.Parameters.Add(p); } }
      Oracle 數(shù)據(jù)庫(kù)連接查詢SQL語(yǔ)句
      內(nèi)連接(inner join)。 
      外連接: 
      全連接(full join)、左連接(left join)、右連接(right join)。 
      交叉聯(lián)接(cross join)。 
      外連接與內(nèi)連接不一樣,外連接返回的查詢結(jié)果中不僅包含符合條件的行,還包括左表(左外連接),右表(右外連接)或者兩個(gè)連接表(全外連接)中的所有不符合條件的數(shù)據(jù)行。 
      1.左連接 (left [outer] join) 
      左外連接就是將左表的所有數(shù)據(jù)分別于右表的每條數(shù)據(jù)進(jìn)行連接組合,返回的結(jié)果除內(nèi)連接的數(shù)據(jù)外,還有左表中不符合條件的數(shù)據(jù),并在右表的相應(yīng)列中填上null值。 
      SQL語(yǔ)句如下: 
      select * from mt_pb_org o left join mt_pb_orgframe f on o.PB_ORGFRAMEID = f.PB_ORGFRAMEID; 
      等價(jià)語(yǔ)句: 
      select * from mt_pb_org o,mt_pb_orgframe f where o.pb_orgframeid = f.pb_orgframeid(+); 
      2.右連接 (right [outer] join) 
      右外連接就是將右表中的所有數(shù)據(jù)分別與左表的每條數(shù)據(jù)進(jìn)行連接組合,返回的結(jié)果除了內(nèi)連接的數(shù)據(jù)外,還有右表中不符合條件的數(shù)據(jù),并在左表相應(yīng)的列中填上null值。 
      SQL語(yǔ)句如下: 
      select * from mt_pb_org o right join mt_pb_orgframe on o.pb_orgframeid = f.pb_orgframeid; 
      等價(jià)語(yǔ)句: 
      select * from mt_pb_org o,mt_pb_orgframe f where o.pb_orgframeid(+) = f.pb_orgframeid; 
      3.全外連接 (full [outer] join) 
      全外連接就是將左表的所有數(shù)據(jù)分別與右表的每條數(shù)據(jù)進(jìn)行連接組合,返回的結(jié)果除了內(nèi)連接的數(shù)據(jù)外,還有兩個(gè)表中不符合條件的數(shù)據(jù),并在左表或者右表的相應(yīng)列中填上null值。 
      SQL語(yǔ)句如下: 
      select * from mt_pb_org o full join mt_pb_orgframe o.pb_orgframeid = f.pb_orgframeid; 
      4.交叉連接(cross join) 
      交叉連接不帶WHERE 子句,它返回被連接的兩個(gè)表所有數(shù)據(jù)行的笛卡爾積,返回到結(jié)果集合中的數(shù)據(jù)行數(shù)等于第一個(gè)表中符合查詢條件的數(shù)據(jù)行數(shù)乘以第二個(gè)表中符合查詢條件的數(shù)據(jù)行數(shù)。 
      SQL語(yǔ)句如下: 
      select * from mt_pb_org o cross join mt_pb_orgframe f; 

        相關(guān)評(píng)論

        閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

        • 8 喜歡喜歡
        • 3 頂
        • 1 難過(guò)難過(guò)
        • 5 囧
        • 3 圍觀圍觀
        • 2 無(wú)聊無(wú)聊

        熱門(mén)評(píng)論

        最新評(píng)論

        發(fā)表評(píng)論 查看所有評(píng)論(0)

        昵稱:
        表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
        字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)