Owner ve DatabaseAdı Yazmadan Tableye ulaşma

MS SQL Server veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Owner ve DatabaseAdı Yazmadan Tableye ulaşma

Mesaj gönderen pro_imaj »

Merhaba;

Ara yazılım geliştirdiğim ticari prg sql kodlarını incelediğimde Veri tabanındaki tablolara Ovner ismi ve database adı kullanmadan bağlanıldığını gördüm böyle bişey nasıl mümkün olabilr acaba.

Mesela SOLAR4 database adı. Table ismi STK diyelim. Şirket bilgisinide Ownerde Tutmuşlar mesela FINSAT450 diye.

Ben böyle bir tableye bağlanmak için

Ado connection ile FINSATxxx databasesine bağlanıyorum ve herhangi bir sql cümlesi içn ise.

Kod: Tümünü seç

Select * from FINSAT450.STK diyorum.
Halbuki onlar bunu şöyle çağırmışlar.

Kod: Tümünü seç

SELECT * FROM STK
Bunu ben çözemedim yani bunu neden sordun derseniz bunlar için değişken tanımlıyorum ve her sql cümlesi için bunlar değişiyor vs baya karemaşık bir hal alıyor. SQL kodlarına hakim olmayı engelliyor desem daha doğru olur sanırım. :?

Saygılarımla
Teşekkürler.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
Kuri_YJ
Moderator
Mesajlar: 2248
Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:

Mesaj gönderen Kuri_YJ »

Selamlar,

Connection'ınızda Default DB'yi vermemişsinizdir de ondan oluyordur.

ADOConnection'ınızdaki connection stringini gönderin, muhtemelen orada atlamışsınızdır. Aksi halde doğrudan master DB'ye bağlanır.

Kolay gelsin

NOT : bunu daha önceden söyleseymişsiniz baya kasmışınız :)
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Mesaj gönderen pro_imaj »

Merhaba hocam;

Kod: Tümünü seç

Provider=MSDASQL.1;Persist Security Info=False;User ID=SA;Data Source=SOLAR4;Extended Properties="DSN=SOLAR4;UID=SA;APP=Enterprise;WSID=UGUR;DATABASE=SOLAR4"
Connection stringe bunu yazıyorum yani ODBC üzerinden SOLAR4 databasesine bağlantı yapıyorum.

Owner FINSAT410 Table adı STK mesela hocam ben bu tableye.

Kod: Tümünü seç

SELECT * FROM FINSAT410.STK
diye bağlanıyorum, halbuki onlar

Kod: Tümünü seç

SELECT * FROM STK
Diye bağlanıyorlar. Şimdi ne yapmam gerek acaba.

Saygılarımla
Teşekkürler.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Mesaj gönderen pro_imaj »

Kuri_YJ yazdı: NOT : bunu daha önceden söyleseymişsiniz baya kasmışınız :)
Hocam Geç olsun güç olmasın. :D

Not: Hocam ben eski sistemde database adı yazmıyordum zaten çünkü yeni bir şirket oluşturduklarında solar4 databasesine oluşturuyor ownerlarıylada şirketi belirliyorlardı. Ama şimdi yeni sisteme geçtiler. Yeni bir şirkette her şirket için yeni bir database ve ilgili databasenin içindede ilgili tabloların ownerlar :( Yani buda 10-15 satırlık bir sql cümlesine database adı + owner adı + table adı yazmam gerekiyor :(


Teşekkürler.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
Kuri_YJ
Moderator
Mesajlar: 2248
Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:

Mesaj gönderen Kuri_YJ »

Selamlar,

Ben karıştırdım, siz owner diyormuşsunuz. Neyse onu bir araştıralım. Normalde ben şimdiye kadar hiç SQL cümlelerimde owner kullanmadım.

Ama tabloları daima SA ile oluşturdum yani kişiye özel bir SQL Kullanıcısı açıp onunla tablolar oluşturmadım. Veya M$-SQL servera bağlanırken SA dışında bir başka kullanıcı oluşturup bağlantı kurmadım.

Bu yüzden bu bahsettiğiniz sorunla hiç karşılaşmadım.

Birşeyler bulursam size de haber veririm.

Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Mesaj gönderen pro_imaj »

Merhaba Hocam;

Tühh ya bende baya sevinmiştim, umutlanmıştım. :D

Hocam sizinde belirttiğiniz gibi Ben mesela sa ile oluşturuyorum daha doğrusu owner kısmı dbo oluyor o zaman zaten normal olarak tabloya bağlantı kurabiliyoruz fakat owneri değişince o zaman ilgili owner + table adı şeklinde oluyor.

Saygılarımla
Teşekkürler.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
kadirer
Üye
Mesajlar: 1
Kayıt: 22 Nis 2006 12:51

Önemli olan neyin üzerine focus olduğunuzdur.

Mesaj gönderen kadirer »

odbc bağlantısı kurarken connection stringde UI ve pwd ler FINSAT400 ve NSAT400 şeklinde olmalıdır Ozaman FINSAT400.STK yerine sadece STK yazmanız yeterli olacaktır. Saygılarımla...[/b]
Cevapla