Forum

Veritabanında bulun...
 
Bildirimler
Hepsini Temizle

Veritabanında bulunan tüm tabloları listeleme-(ASP - Access Veritabanı)

6 Yazılar
2 Üyeler
0 Likes
3,033 Görüntüleme
 ned
(@mehmetnedimakgul)
Gönderiler: 8
Active Member
Konu başlatıcı
 

Çözüm Park ailesine Merhabalar

 

Ufak çapta bir proje ile uğraşıyorum ve veritabanı bilgim yeterli olmuyor bu projeyi hızlı bir şekilde tamamlamam için.

Projede takıldığım konularda yardım ederseniz beni çok memnun edersiniz.

Şimdiden yapacağınız yardımlarınız için çok teşekkür ederim.

 

Konu: Stok Takip Programı

Kullanıcı taraflı veritabanı oluşturmak, bu veritabanına kullanıcı taraflı istediği sayıda tablo oluşturmak  ve bu tabloya istediği kadar sütun oluşturma komutlarını kodlamış bulunmaktayım.

AMAÇ:

Kullanıcı ekranda silmek istediği veritabanlarını ve o veritabanlarına ait tabloları seçmesi gerekiyor.

Ben bütün veritabanların adını ve bütün tabloların isimlerini nasıl çekebileceğimi sağlayacak bağlantıyı öğrenmek istiyorum.

Bu bağlantı kullanıcının formdan bu verileri eklemesini ve accessten direk girişini kapsayacak şekilde olması gerekiyor.

 

 

 

 
Gönderildi : 30/08/2015 15:56

 ned
(@mehmetnedimakgul)
Gönderiler: 8
Active Member
Konu başlatıcı
 

Kullanıcı A veritabanıma formdan tablo oluşturuyor ve bu esnada A veritabanında bu oluşturulan tabloların isimlerini tuttuğum bix X tablom var.

Bu X tablosuna tablo isimleri kaydoluyor.Sorun şu noktada ortaya çıkıyor.Kullanıcı Access i açıp direk tablo oluşturursa bu X tablosuna bu oluşturduğu 

tablosunun ismi kaydolmuyor.Bu yüzden bu engelide aşacak şekilde bir bağlantının nasıl kurulacağını öğrenmem gerekiyor.

 
Gönderildi : 30/08/2015 16:09

 ned
(@mehmetnedimakgul)
Gönderiler: 8
Active Member
Konu başlatıcı
 

<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<%
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("veritabanim.mdb"))
ssql="SELECT Name FROM MSysObjects WHERE (Left([Name],1)<>'~') AND (Left([Name],4)<>'MSys') AND ([Type] In (1, 4, 6)) ORDER BY Name; "
Set oRS = oConn.Execute(sSQL)

Do While NOT oRS.EOF
%>
<%=oRS("Name")%>
<br>
<%
oRS.MoveNext
Loop

oConn.Close
Set oRS = Nothing
Set oConn = Nothing
%>

 

Bu kod sayesinde veritabanındaki tüm tablo adlarını listeleyebiliyor muşuz.

 
Gönderildi : 30/08/2015 23:10

(@eravse)
Gönderiler: 1753
Üye
 

merhaba biraz geç oldu ama 🙂 SQL server ise şöyle bir sorgu ile hepsine erişebilirsiniz. İleride belki SQL Expresse taşımak istersiniz 🙂

USE YourDBName
GO

SELECT
*
FROM sys.Tables
GO

ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com

 
Gönderildi : 31/08/2015 01:55

 ned
(@mehmetnedimakgul)
Gönderiler: 8
Active Member
Konu başlatıcı
 

sys.tables kısmını tanımlamada hata veriyordu

"SELECT Name FROM MSysObjects WHERE (Left([Name],1)<>'~') AND (Left([Name],4)<>'MSys') AND ([Type] In (1, 4, 6)) ORDER BY Name; "

bu şekil bir kodlama yapmam gerekti.

 

neden sys.tables komutunu algılamadığına bir çözüm bulamadım.

 
Gönderildi : 31/08/2015 14:59

 ned
(@mehmetnedimakgul)
Gönderiler: 8
Active Member
Konu başlatıcı
 

sütun adlarını listeleme

 

<%

set CONNECT = server.CreateObject("ADODB.Connection")
CONNECT.Open "PROVIDER=Microsoft.ACE.OLEDB.12.0;DATA SOURCE=" &Server.MapPath("veritabanim.mdb") & ";"
ssql="select column_name,* from veritabanim.columns where table_name = tabloadi;"
set rs = CONNECT.Execute("select * from tabloadi")
for each column in rs.fields
Response.Write column.name & "<br>"
next
%>

 
Gönderildi : 01/09/2015 14:46

Paylaş: