Entwickler-Ecke

Datenbanken (inkl. ADO.NET) - Datenbank wird auf anderen Computer wird nich angezeigt


niggo233 - Di 20.09.11 20:35
Titel: Datenbank wird auf anderen Computer wird nich angezeigt
Hallo
ich habe mal wieder ein problem!
Ich ahbe ein Datenbank Programm alles gut das debbugin geht die Datenbank wird geöffnet und ich kann sie auch speicher
Aber auf einen anderen Computer wird die Datenbank nicht angezeigt

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
 public partial class Form16 : Form
    {
        SqlDataAdapter adapter;
        DataTable table;
        public Form16()
        {
            InitializeComponent();
        }

        private void Form16_Load(object sender, EventArgs e)
        {
            SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\niggo\Documents\Programme1\Adressbuch.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
            SqlCommand command = new SqlCommand("SELECT * FROM Adressbuch", conn);
            adapter = new SqlDataAdapter(command);
            SqlCommandBuilder cmdBuilder = new SqlCommandBuilder(adapter);
            table = new DataTable();
            adapter.Fill(table);
            dataGridView1.DataSource = table;
            dataGridView1.Columns[0].Visible = false;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                adapter.Update(table);
                MessageBox.Show("Es wurde erfolgreich gespeichert");
            }
            catch { MessageBox.Show("Es ist ein Fehler aufgetreten"); }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void speichernToolStripMenuItem_Click(object sender, EventArgs e)
        {
            try
            {
                adapter.Update(table);
                MessageBox.Show("Es wurde erfolgreich gespeichert");
            }
            catch { MessageBox.Show("Es ist ein Fehler aufgetreten"); }
        }

        private void abbrechenToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void allesSchließenToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void toolStripMenuItem1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Geben sie in diese Felder die Daten für die Person ein die sie entragen wollen und drücken sie auf speichern um die Daten zu speichern");
        }


Ralf Jansen - Di 20.09.11 21:17

Was heißt nicht angezeigt? Falls du keine entsprechende Fehlermeldung bekommst würde ich dir ein entsprechendes Exceptionhandling empfehlen. Ist denn überhaupt eine SQL Server Express Instanz auf diesem anderen Rechner vorhanden?

Du bist mittlerweile bis 16 gekommen und hast immer noch nicht gemerkt das sprechende Namen beim programmieren helfen :shock:


niggo233 - Di 20.09.11 21:25

Hi
hm ja hab ich
Und ich bin sogar schon bei 21 aber naja weiß es halt nicht


Horschdware - Mi 21.09.11 14:31

user profile iconRalf Jansen hat folgendes geschrieben Zum zitierten Posting springen:
Ist denn überhaupt eine SQL Server Express Instanz auf diesem anderen Rechner vorhanden?

Das zum einen..


Zum anderen:
user profile iconniggo233 hat folgendes geschrieben Zum zitierten Posting springen:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
SqlConnection conn = new SqlConnection(
  @"Data Source=.\SQLEXPRESS;
  AttachDbFilename=
C:\Users\niggo\Documents\Programme1\Adressbuch.mdf;
  Integrated Security=True;
  Connect Timeout=30;
  User Instance=True"

);

Ich möchte wetten, dass der Pfad auf dem anderen Rechner nicht existiert.


niggo233 - Mi 21.09.11 14:45

Hi
ja das hab ich mir schon geadcht
Die Instanz existiert
Aber wie kann ich das ändern


Ralf Jansen - Mi 21.09.11 14:51

Zitat:
Die Instanz existiert
Aber wie kann ich das ändern


Löschen ;) Aber im Ernst gib einfach den richtigen Pfad zur Datenbank an oder was ist dein Problem dabei?


niggo233 - Mi 21.09.11 15:03

Hi
naja das hab ich ja es geht ja uafn ausgangs computer aber auf einen anderen nicht


Horschdware - Mi 21.09.11 15:08

Du hast die letzten Antworten gelesen, oder?


niggo233 - Mi 21.09.11 19:27

Ja natürlich aber ich kann doch nciht bei jeden computer wo das Programm darauf ist den Pfad ändern


Ralf Jansen - Mi 21.09.11 20:31

Doch. Oder willst du alle User dieser Welt zwingend sich als User niggo an ihren PC anzumelden? Mal abgesehen davon das du unter älteren Windows Version keinen Users Ordner finden wirst. Entweder du fragst den User bei der Installation wo die Datenbank liegen soll oder du bestimmst dir einen passenden Ordner via Environment.GetFolderPath [http://msdn.microsoft.com/de-de/library/14tx8hby.aspx].