-
[ADO.NET] DSN없이 ODBC 연결로 DB에 대한 Table 정보 가져오기.NET/개념 및 유용한 팁 2015. 2. 7. 22:27반응형
ADO.NET 및 ODBC를 이용한 전통적인 쿼리 연동 방식은 더 이상 선호되지 않습니다. EntityFramework 또는 Dapper를 이용한 ORM 방식의 DB연동을 사용해보세요.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; using System.Data.Odbc; namespace DynamicDBread { class Program { /// /// DB가 구축된 서버의 IP /// static string IP = "localhost"; /// /// DB 드라이버명 'odbc 데이터 원본'의 드라이버 탭에서 참조 /// static string DRIVER = "SQL Server"; /// /// DB 아이디 /// static string Uid = "sa"; /// /// DB 패스워드 /// static string Pwd = "password"; /// /// DB명 /// static string Database = "master"; static void Main(string[] args) { string SQLConnectionString = "SERVER=" + IP + ";DRIVER=" + DRIVER + ";Uid="+ Uid +";Pwd="+ Pwd +";Database="+Database+";"; using (OdbcConnection con = new OdbcConnection(SQLConnectionString)) { con.Open(); var dbs = con.GetSchema(); var tables = con.GetSchema("Tables"); var cols = con.GetSchema("Columns"); var a = con.GetSchema(); con.Close(); } } } }
GetSchema 호출시 파라메터를 주지 않으면 호출할 수 있는 모든 스키마명을 알 수 있다.
출처 : http://stackoverflow.com/questions/12197532/get-all-tables-and-all-columns-from-a-odbc-database
반응형'.NET > 개념 및 유용한 팁' 카테고리의 다른 글
[WCF] 3. 이중계약으로 콜백기능 구현하기 (0) 2015.04.05 [WCF] 2. WCF 개념 (0) 2015.03.28 [WCF] 1. Helloworld (2) 2015.02.18 [Invoke & BeginInvoke] 1. 다른 Thread 에서 UI 접근하기 (2) (0) 2015.01.12 [Invoke & BeginInvoke] 1. 다른 Thread 에서 UI 접근하기 (1) (1) 2015.01.11