|
Îåêßíçóå áðü ôï ìÝëïò freezer. Τελευταία δημοσίευση από το μέλος beastie στις 15-01-2007, 15:28. Υπάρχουν 12 απαντήσεις.
-
24-12-2006, 19:47
|
-
freezer
-
-
-
Μέλος από τις 24-12-2006
-
-
Δημοσιεύσεις 7
-
-
|
visual studio kai sql server 2005
Είμαι νέος χρήστης του visual studio .NET και δουλεύω σε μία εφαρμογή σε c++ η οποία πρέπει να επεξεργάζεται στοίχεια από μία βάση δεδομένων. έχω δημιουργήσει τη βάση δεδομένων με τα εργαλεία του visual studio και του sql server 2005 αλλά δεν γνωρίζω πωσ να συνδεθώ στη βάση δεδομένων και να εκτελώ sql ερωτήματα.Αν κάποιος από σας γνωρίζει θα ήθελα μια βοήθεια...
|
|
-
24-12-2006, 21:13
|
-
Pak
-
-

-
Μέλος από τις 24-11-2006
-
Κύπρος, Λεμεσός
-
Δημοσιεύσεις 432
-
-
|
Απ: visual studio kai sql server 2005
cn = New System.Data.SqlClient.SqlConnection
cn.ConnectionString = "Εδώ βάζεις το connection string"
cn.Open()
Dim cm As New SqlClient.SqlCommand
cm.CommandText = "SELECT * FROM categories"
cm.CommandType = CommandType.Text
cm.Connection = cn
Dim dr As SqlClient.SqlDataReader = cm.ExecuteReader
While dr.Read
Me.ComboBox1.Items.Add(dr.Item(0))
End While
dr.Close()
cn.Close()
Έτσι χοντρά χοντρά και βιαστικά ένα παράδειγμα πώς φορτώνεις δεδομένα πχ. σε ένα combo... Είναι σε vb, φαντάζομαι μπορείς να κάνεις την μετάφραση... Αυτό είναι το connencted σενάριο. Υπάρχει και το discononnected αν ενδιαφέρεσαι, αλλά φαντάζομαι θα σε ικανοποιεί αυτό...
Coding at Mediterranean Acoustics
|
|
-
25-12-2006, 21:02
|
-
freezer
-
-
-
Μέλος από τις 24-12-2006
-
-
Δημοσιεύσεις 7
-
-
|
Απ: visual studio kai sql server 2005
eyxaristw re sy...
prospathhsa na to metatrepsw se c++ alla exw kapoia problhmata
den anagnwrizei kapoious typous opws to Dim kai alla tetoia...
mporeis mhpws na mou dwseis thn metafrash se c++...
mh fantasteis oti exw asxolhthei me visual basic...
|
|
-
-
26-12-2006, 14:10
|
|
Απ: visual studio kai sql server 2005
Λογικό, καθώς το Dim είναι ένα από τα "περίεργα" χαρακτηριστικά της VB και σημαίνει ότι η γραμμή που ακολουθεί είναι ορισμός μεταβλητών. Άλλα μυστήρια χαρακτηριστικά είναι το while/end while αντί για {-} brackets, και η κλήση μεθόδων χωρίς παρενθέσεις. Το τελευταίο μάλιστα είναι αρκετά επικίνδυνο, καθώς δεν καταλαβαίνει πλέον κανείς αν χρησιμοποιείς functions ή properties! Έτσι κι αλλιώς, η σύνταξη της C++ διαφέρει σε κάποια περίεργα σημεία ακόμα και από την C# οπότε πρέπει να προσέξεις κάποια πράγματα.
Ο κώδικας που ψάχνεις είναι ο παρακάτω:
<FONT size=2><FONT size=2>
</FONT><FONT color=#0000ff size=2>using</FONT><FONT size=2> </FONT><FONT color=#0000ff size=2>namespace</FONT><FONT size=2> System::Data; </FONT><FONT color=#0000ff size=2>using</FONT><FONT size=2> </FONT><FONT color=#0000ff size=2>namespace</FONT><FONT size=2> System::Data::SqlClient; ...</FONT>
SqlConnection ^con=</FONT><FONT color=#0000ff size=2>gcnew</FONT><FONT size=2> SqlConnection(</FONT><FONT color=#a31515 size=2>"Data Source=myserver;Initial Catalog=mydb;User ID=myname;Password=mypassword"</FONT><FONT size=2>); </FONT><FONT size=2>con->Open(); SqlCommand ^cmd=</FONT><FONT color=#0000ff size=2>gcnew</FONT><FONT size=2> SqlCommand(</FONT><FONT color=#a31515 size=2>"select * from mytable"</FONT><FONT size=2>,con); SqlDataReader ^reader=cmd->ExecuteReader(); </FONT><FONT color=#0000ff size=2>while</FONT><FONT size=2>(reader->Read()) { Console::WriteLine(</FONT><FONT color=#a31515 size=2>"{0} {1}"</FONT><FONT size=2>,reader[0],reader[1]); } con->Close();</FONT>
Τα περίεργα σημεία τώρα, πέρα από τις διαφορές στις κλήσεις των μεθόδων (-> αντί για ., :: αντί . για τις στατικές μεθόδους), πρέπει να χρησιμοποιήσεις την gcnew αντί για τη new και να ορίσεις τις μεταβλητές των αντικειμένων ως SqlConnection ^con αντί &con ή *con.
Παναγιώτης Καναβός, Freelancer Twitter: http://www.twitter.com/pkanavos
|
|
-
28-12-2006, 12:49
|
-
freezer
-
-
-
Μέλος από τις 24-12-2006
-
-
Δημοσιεύσεις 7
-
-
|
Απ: visual studio kai sql server 2005
Παιδιά συγνώμη που σας εχω πρήξει αλλά πάλι έχω κάποιο πρόβλημα
τώρα δεν μου βγάζει λάθη στο compile αλλα στην εκτέλεση
το κομματι του κώδικα είναι το παρακάτω:
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
String^ connStr="Persist Security Info=False;"+
"Initial Catalog=soft_engi;Data Source=.\SQLEXPRESS;";
MessageBox::Show("Η διαγραφή έγινε επιτυχώς\n");
SqlConnection^ con=gcnew SqlConnection();
con->ConnectionString=connStr;
SqlCommand ^cmd= gcnew SqlCommand("insert into suplier values(121223,'dssdsad',1212,'sdfsadsad',2333,1)",con);
cmd->CommandType=CommandType::Text;
con->Open();
SqlDataReader ^reader=cmd->ExecuteReader();
while(reader->Read())
{
Console::WriteLine("{0} {1}",reader[0],reader[1]);
}
con->Close();
}
όταν λοιπόν στην εκτέλεση πατάω το συγκεκριμμενο κουμπι
το ακόλουθο παράθυρο σφαλματος εμφανίζεται:
System.Data.SqlClient.SqlException: An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Connect(Boolean& useFailoverPartner, Boolean& failoverDemandDone, String host, String failoverPartner, String protocol, SqlInternalConnectionTds connHandler, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject, Boolean aliasLookup)
at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.SqlClient.SqlConnection.Open()
at My43.Form1.button1_Click(Object sender, EventArgs e) in g:\χαρτοφύλακας\πανεπιστήμιο\μαθήματα\τεχνολογία λογισμικού\project\screen shots\visual studio projects\43\43\form1.h:line 140
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
δεν ξέρω τι να κάνω πραγματικά μου έχει σπάσει τα νευρα....
ευχαριστώ πολύ
|
|
-
28-12-2006, 14:53
|
-
Pak
-
-

-
Μέλος από τις 24-11-2006
-
Κύπρος, Λεμεσός
-
Δημοσιεύσεις 432
-
-
|
Απ: visual studio kai sql server 2005
Το πρόβλημα σου έχει να κανει με το connection string. Πρέπει να δώσεις user name και password. Αλλιώς να μπείς με windows authenticacion στον SQL Server...
πχ
"Data Source=.;Integrated Security=SSPI;Initial Catalog=Northwind;Persist Security Info=False"
η
"Data Source=.;User ID=Pak;Password=000000;Initial Catalog=Northwind;Persist Security Info=True"
Coding at Mediterranean Acoustics
|
|
-
28-12-2006, 15:35
|
-
Filaretos
-
-

-
Μέλος από τις 29-03-2005
-
Καλλιθέα
-
Δημοσιεύσεις 157
-
-
|
Απ: visual studio kai sql server 2005
freezer wrote: |
System.Data.SqlClient.SqlException: An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
|
|
Δεν είμαι βέβαιος αλλά νομίζω ότι το ¨πρόβλημα¨ είναι στον sql server 2005. Αν θυμάμαι καλά ο sql server 2005 by default στην εγκατάσταση του, για λόγους ασφαλείας έχει απενεργοποιημένα τα πρωτόκολλα
επικοινωνίας (tcp/ip κλπ). Θα πρέπει λοιπόν να πας να ενεργοποιήσεις τα πρωτόκολλα από
το Sql
server configuration manager.
Φιλάρετος Σεβαστιάδης. Albert Camus: Life is the sum of your choices.
|
|
-
29-12-2006, 14:54
|
-
freezer
-
-
-
Μέλος από τις 24-12-2006
-
-
Δημοσιεύσεις 7
-
-
|
Απ: visual studio kai sql server 2005
Το "Integrated Security=SSPI" είναι στανταρ ή εγω θα έχω κάποιο άλλο γιατι ετσι το δοκίμασα και μου βγάζει τα ίδια
|
|
-
29-12-2006, 23:26
|
-
Filaretos
-
-

-
Μέλος από τις 29-03-2005
-
Καλλιθέα
-
Δημοσιεύσεις 157
-
-
|
Απ: visual studio kai sql server 2005
freezer wrote: | Το "Integrated Security=SSPI" είναι στανταρ ή εγω θα έχω κάποιο άλλο γιατι ετσι το δοκίμασα και μου βγάζει τα ίδια |
|
Το "Integrated Security=SSPI" σημαίνει ότι κάνεις χρήση του windows authentication.
Δοκίμασε σε παρακαλώ να κάνεις το εξής : Start - Programs Files - Microsoft Sql Server 2005 - Configuration Tools - Sql Configuration Manager Θα ανοίξει το παράθυρο του configuration manager.
Μετά, Sql Server Network Configuration - Protocols for SQLEXPRESS κσι δες αν TCP/IP είναι enabled..
Φιλάρετος Σεβαστιάδης. Albert Camus: Life is the sum of your choices.
|
|
-
01-01-2007, 08:44
|
-
freezer
-
-
-
Μέλος από τις 24-12-2006
-
-
Δημοσιεύσεις 7
-
-
|
Απ: visual studio kai sql server 2005
το εκανα αυτο οταν μου απαντησες στο 1ο μηνυμα. To έκανα enable.
το connection string μου ειναι
String^ connStr="Data Source=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=soft_engi;Persist Security Info=False";
SqlConnection^ con=gcnew SqlConnection();
con->ConnectionString=connStr;
στο φακελο του project εχς και το soft_engi.mdf που εχει τη βαση δεδομενων.
τι μπορει να φταιει αλλο?
|
|
-
03-01-2007, 20:15
|
-
freezer
-
-
-
Μέλος από τις 24-12-2006
-
-
Δημοσιεύσεις 7
-
-
|
Απ: visual studio kai sql server 2005
επειδή δεν μπορεσα να βγάλω ακρη με το connection string, δοκιμασα κατι άλλο.
έκανα εισαγωγή στονκώδικα μου της βάση ως new datasource και έκανα εισαγωγή μιας γραμμής ως εξης:
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
soft_engiDataSet2 ^s=gcnew soft_engiDataSet2;
s->suplier->AddsuplierRow(233344,"freezer",6777,"geddd",6667,true);
s->suplier->AcceptChanges();
s->AcceptChanges();
Form1::Close();
}
>>
τωρα δεν μου βγάζει κανενα λάθος εκτελείται σωστά ο κώδικας αλλα δεν παιρνει την νέα γραμμη η βάση δεδομένων
αν καποιος γνωρίζει θα με βοηθούσε πολύ.....
|
|
-
15-01-2007, 15:28
|
-
beastie
-
-

-
Μέλος από τις 01-04-2005
-
Ζωγράφου, Αθήνα
-
Δημοσιεύσεις 95
-
-
|
Re: Απ: visual studio kai sql server 2005
Συνεχίζω το συγκεκριμένο thread γιατί και εγώ έπεσα πάνω στο ίδιο πρόβλημα.
Συγκεκριμένα σε PC έχω εγκαταστήσει SQL Server 2005 Developer Edition (οπου αναφέρεται ότι έχει τα ίδια Features με τον enterprise αλλά όχι Production License) και Visual Studio 2005 Pro.
To instance του SQL Server που έχω φτιάξει το έχω ονομάσει DESK.
Από το Microsoft SQL Server Management Studio δουλεύω κανονικά (βλέπω τις βάσεις AdventureWorks, φτιάχνω δικές μου κλπ)
Από το VS πηγα να φτιάξω ένα connection (Server Explorer-new connection). Επιλέγω τον SQL (to instance DESK ) αλλά στις βάσεις δεν βλέπω να γεμίζει με καμία.
Η εγκατάσταση στον SQL έχει γίνει με Mixed Mode (WinAuth & Sql Logins).
Επειδη μου έβγαλε το γνωστό πρόβλημα ότι τα Remote Connections είναι ByDefault Disabled, τα έκανα enabled από το SQL Server Config Manager. (και το TCP kai ta Named Pipes)
Δυστυχώς όμως δεν άλλαξε κάτι. Ολα τα Services του SQL έγιναν Stop και Start. Reboot toy H/Y αλλά τίποτα.
Ευχαριστώ εκ των προτέρων.
------------------------------- Κ. Γιαγιάς
Θα ήθελα να είμαι μέσα στην φωτογραφία και όχι εδώ!!!!
http://beastie06.wordpress.com
|
|
|
|
|