Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB .NET > Добавить СУБД


Автор: Larec 2.6.2011, 13:50
Ребят,помогите пожалуйста с прогой,скоро предзащита диплома,а доработать сам не могу.Прога готовая,надо только вставить СУБД любую,кроме accsess
Код

Public Class MainForm

    Dim s As String
    Dim s2 As String
    Dim i As New Integer
    Dim i2 As New Integer
    Dim i3 As New Integer
    Dim i4 As New Integer
    Dim price As New Integer
    Dim priceTemp As New Integer
    Dim priceStrop As New Integer
    Dim Strop1 As String
    Dim Strop2 As String
    Dim Strop3 As String


    Private Sub Toper_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Toper.CheckedChanged
        If Toper.Checked = True Then
            Me.TopMost = True
        Else
            Me.TopMost = False
        End If
    End Sub

    Private Sub Adder_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Adder.Click
        If Adder.Text = "44" Then
            Me.Width = 888
            Adder.Text = "33"
        Else
            Me.Width = 512
            Adder.Text = "44"
        End If
    End Sub

    Private Sub MainForm_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
        If e.KeyValue = 13 Then
            Raschet.PerformClick()
        End If
    End Sub

    Private Sub MainForm_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Me.Width = 512
    End Sub

    Private Sub Ras4et()
        price = 0 'Устанавливаем цену на ноль, а дальше прибавляем к ней
        Strop1 = 0 'Обнуляем прочие данные
        Strop2 = 0
        Strop3 = 0
        Try
            Info.Text = "Расчет для проекта " + ProjectName.Text.ToString + vbCrLf
            Info.Text = Info.Text + vbCrLf + "Заказчик: " + TextBox1.Text.ToString + vbCrLf

            'Расчет доски пола
            If OneFloor.Checked = True Then
                s = Val(S1floor.Text - Val(S0floor.Text))
                s = Val(s * Val(Polnakidka.Text))
                Info.Text = Info.Text + vbCrLf + "Доска пола: " + s + " м2"
            End If
            If TwoFloor.Checked = True Then
                s = Val(S1floor.Text + Val(S2floor.Text))
                s = Val(s - Val(S0floor.Text))
                s = Val(s * Val(Polnakidka.Text))
                Info.Text = Info.Text + vbCrLf + "Доска пола: " + s + " м2"
            End If


            If FormatDoskiPola.Text = "40/140/6000" Then
                Info.Text = Info.Text + vbCrLf + " [Материал: Сосна " + FormatDoskiPola.Text.ToString + "]"
                priceTemp = Val(price + Val(s * 530))
            End If
            Info.Text = Info.Text + vbCrLf + " [Цена: " + priceTemp.ToString + "]"
            price = Val(price + priceTemp)


            'Расчет стропил
            
            'первый набор
            If Nabor1.Checked = True Then
                If Val(LengthStropil1.Text) <= 3000 Then
                    s = Val(LengthRoof1.Text / 500)
                    s = Int(Val(s) + 2)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(1)

                    s = Val(s / 2)

                End If

                If Val(LengthStropil1.Text) > 3000 And Val(LengthStropil1.Text) <= 6000 Then
                    s = Val(LengthRoof1.Text / 500)
                    s = Int(Val(s) + 2)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(1)
                End If

                If Val(LengthStropil1.Text) > 6000 And Val(LengthStropil1.Text) <= 9000 Then
                    s = Val(LengthRoof1.Text / 500)
                    s = Int(Val(s) + 2)
                    s = Val(s + Val(s / 2))
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(1)
                End If

                If Val(LengthStropil1.Text) > 9000 Then
                    s = Val(LengthRoof1.Text / 500)
                    s = Int(Val(s) + 2)
                    s = Val(s + s)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(1)
                End If


                Info.Text = Info.Text + vbCrLf + vbCrLf + "Первый набор стропил: " + s + " м3"
                Strop1 = s ' в переменную перегоняем кубатуру стропил, пригодиться для расчета вент.обрешетки
                If FormatStropil.Text = "50/200/6000" Or FormatStropil.Text = "50/150/6000" Then
                    priceTemp = Val(s * 9000)
                End If
                If FormatStropil.Text = "42/142/6000(строг.)" Or FormatStropil.Text = "42/185/6000(строг.) Then" Then
                    priceTemp = Val(s * 11500)
                End If
                price = Val(price + priceTemp)
                priceStrop = priceTemp
            End If
            'второй набор
            If Nabor2.Checked = True Then
                If Val(LengthStropil2.Text) <= 3000 Then
                    s = Val(LengthRoof2.Text / 500)
                    s = Int(Val(s) + 2)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(2)

                    s = Val(s / 2)

                End If

                If Val(LengthStropil2.Text) > 3000 And Val(LengthStropil2.Text) <= 6000 Then
                    s = Val(LengthRoof2.Text / 500)
                    s = Int(Val(s) + 2)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(2)
                End If

                If Val(LengthStropil2.Text) > 6000 And Val(LengthStropil2.Text) <= 9000 Then
                    s = Val(LengthRoof2.Text / 500)
                    s = Int(Val(s) + 2)
                    s = Val(s + Val(s / 2))
                    s = (Val(s * 6)).ToString

                   Stropil_OPT(2)
                End If

                If Val(LengthStropil2.Text) > 9000 Then
                    s = Val(LengthRoof2.Text / 500)
                    s = Int(Val(s) + 2)
                    s = Val(s + s)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(2)
                End If


                Info.Text = Info.Text + vbCrLf + "Второй набор стропил: " + s + " м3"
                Strop2 = s
                If FormatStropil.Text = "50/200/6000" Or FormatStropil.Text = "50/150/6000" Then
                    priceTemp = Val(s * 9000)
                End If
                If FormatStropil.Text = "42/142/6000(строг.)" Or FormatStropil.Text = "42/185/6000(строг.) Then" Then
                    priceTemp = Val(s * 11500)
                End If
                price = Val(price + priceTemp)
                priceStrop = Val(priceTemp + priceStrop)
            End If
            'третий набор
            If Nabor3.Checked = True Then
                If Val(LengthStropil3.Text) <= 3000 Then
                    s = Val(LengthRoof3.Text / 500)
                    s = Int(Val(s) + 2)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(3)

                    s = Val(s / 2)

                End If

                If Val(LengthStropil3.Text) > 3000 And Val(LengthStropil3.Text) <= 6000 Then
                    s = Val(LengthRoof3.Text / 500)
                    s = Int(Val(s) + 2)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(3)
                End If

                If Val(LengthStropil3.Text) > 6000 And Val(LengthStropil3.Text) <= 9000 Then
                    s = Val(LengthRoof3.Text / 500)
                    s = Int(Val(s) + 2)
                    s = Val(s + Val(s / 2))
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(3)
                End If

                If Val(LengthStropil3.Text) > 9000 Then
                    s = Val(LengthRoof3.Text / 500)
                    s = Int(Val(s) + 2)
                    s = Val(s + s)
                    s = (Val(s * 6)).ToString

                    Stropil_OPT(3)
                End If


                Info.Text = Info.Text + vbCrLf + "Третий набор стропил: " + s + " м3"
                Strop3 = s
                If FormatStropil.Text = "50/200/6000" Or FormatStropil.Text = "50/150/6000" Then
                    priceTemp = Val(s * 9000)
                End If
                If FormatStropil.Text = "42/142/6000(строг.)" Or FormatStropil.Text = "42/185/6000(строг.) Then" Then
                    priceTemp = Val(s * 11500)
                End If
                price = Val(price + priceTemp)
                priceStrop = Val(priceTemp + priceStrop)
            End If
            If Nabor1.Checked = True Or Nabor2.Checked = True Or Nabor3.Checked = True Then
                s2 = Val(0 + Strop1 + Strop2 + Strop3)
                Info.Text = Info.Text + vbCrLf + "Материал: [ " + FormatStropil.Text.ToString + "]"
                Info.Text = Info.Text + vbCrLf + "Общая кубатура стропил: " + s2.ToString + " м3"
                Info.Text = Info.Text + vbCrLf + " [Цена: " + priceStrop.ToString + "]"
            End If
           

            'Расчет вент.обрешетки
            s = Val(s2 / 4)
            Info.Text = Info.Text + vbCrLf + vbCrLf + "Вент.обрешетка: " + s + " м3"

            priceTemp = Val(s * 11500)
            Info.Text = Info.Text + vbCrLf + " [Цена: " + priceTemp.ToString + "]"
            price = Val(price + priceTemp)


            'Расчет обрешетки
            s = Val(Val(LengthRoof1.Text / 1000) * Val(LengthStropil1.Text / 1000))
            s = Val(s / 2)
            s = Val(s * Obreshetka.Text)
            If StropilSymmetry1.Checked = True Then
                s = Val(s * 2)
            End If
            s = Val(s * 0.024)

            Info.Text = Info.Text + vbCrLf + vbCrLf + "Обрешетка: " + s + " м3"
            Info.Text = Info.Text + vbCrLf + " [Количество слоев обрешетки: " + Obreshetka.Text.ToString + "]"

            priceTemp = Val(s * 10000)
            Info.Text = Info.Text + vbCrLf + " [Цена: " + priceTemp.ToString + "]"
            price = Val(price + priceTemp)


            'Расчет имитации бруса
            s = Val(Val(LengthRoof1.Text / 1000) * Val(LengthStropil1.Text / 1000))
            s = Val(s + Val(S1floor.Text))
            s = Val(s - Val(S0floor.Text))
            If StropilSymmetry1.Checked = True Then
                s = Val(s * 2)
            End If
            Info.Text = Info.Text + vbCrLf + vbCrLf + "Имитация бруса: " + s + " м2"

            priceTemp = Val(s * 187)
            Info.Text = Info.Text + vbCrLf + " [Цена: " + priceTemp.ToString + "]"
            price = Val(price + priceTemp)


            'Расчет черновой доскu
            If OneFloor.Checked = True Then
                s = Val(S1floor.Text - Val(S0floor.Text))
                Info.Text = Info.Text + vbCrLf + vbCrLf + "Черновая доска [24/150/6000]: " + s + " м2"
                s = Val(s * 0.024)
                Info.Text = Info.Text + vbCrLf + "Черновая доска [24/150/6000]: " + s + " м3"
            End If
            If TwoFloor.Checked = True Then
                s = Val(S1floor.Text + Val(S2floor.Text))
                s = Val(s - Val(S0floor.Text))
                Info.Text = Info.Text + vbCrLf + vbCrLf + "Черновая доска [24/150/6000]: " + s + " м2"
                s = Val(s * 0.024)
                Info.Text = Info.Text + vbCrLf + "Черновая доска [24/150/6000]: " + s + " м3"
            End If

            priceTemp = Val(s * 10000)
            Info.Text = Info.Text + vbCrLf + " [Цена: " + priceTemp.ToString + "]"
            price = Val(price + priceTemp)


            'Расчет площадей стен
            s = Val(SOutWall.Text / Val(OutWallWidth.Text / 1000))
            Info.Text = Info.Text + vbCrLf + vbCrLf + " [Площадь внешних стен: " + s.ToString + " м2]"
            i4 = s
            s = Val(SInWall.Text / Val(InWallWidth.Text / 1000))
            s = Val(s * 2)
            s = Val(i4 + s)
            Info.Text = Info.Text + vbCrLf + " [Площадь внутренних стен: " + s.ToString + " м2]"



            'Расчет  кубатуры стен()
            If BlockHeight135.Checked = True Then
                If OutWallWidth.Text = 200 Then
                    s = Val(SOutWall.Text * 19900)
                End If
                If OutWallWidth.Text = 160 Then
                    s = Val(SOutWall.Text * 19900)
                End If
                If OutWallWidth.Text = 120 Then
                    s = Val(SOutWall.Text * 19900)
                End If
                If OutWallWidth.Text = 80 Then
                    s = Val(SOutWall.Text * 19900)
                End If
                '*/*
                If InWallWidth.Text = 200 Then
                    s = Val(SInWall.Text * 19900 + s)
                End If
                If InWallWidth.Text = 160 Then
                    s = Val(SInWall.Text * 19900 + s)
                End If
                If InWallWidth.Text = 120 Then
                    s = Val(SInWall.Text * 19900 + s)
                End If
                If InWallWidth.Text = 80 Then
                    s = Val(SInWall.Text * 19900 + s)
                End If
            End If
            '*//*
            If BlockHeight170.Checked = True Then
                If OutWallWidth.Text = 200 Then
                    s = Val(SOutWall.Text * 19900)
                End If
                If OutWallWidth.Text = 160 Then
                    s = Val(SOutWall.Text * 19900)
                End If
                If OutWallWidth.Text = 120 Then
                    s = Val(SOutWall.Text * 19900)
                End If
                If OutWallWidth.Text = 80 Then
                    s = Val(SOutWall.Text * 19900)
                End If
                '*/*
                If InWallWidth.Text = 200 Then
                    s = Val(SInWall.Text * 19900 + s)
                End If
                If InWallWidth.Text = 160 Then
                    s = Val(SInWall.Text * 19900 + s)
                End If
                If InWallWidth.Text = 120 Then
                    s = Val(SInWall.Text * 19900 + s)
                End If
                If InWallWidth.Text = 80 Then
                    s = Val(SInWall.Text * 19900 + s)
                End If
            End If
            i4 = Val(SInWall.Text + Val(SOutWall.Text))
            Info.Text = Info.Text + vbCrLf + vbCrLf + "Клееный брус: " + i4.ToString + " м3"
            priceTemp = s
            Info.Text = Info.Text + vbCrLf + " [Цена: " + priceTemp.ToString + "]"
            price = Val(price + priceTemp)




            'Итоговая цена 
            Info.Text = Info.Text + vbCrLf + vbCrLf + vbCrLf + " [Итоговая цена: " + price.ToString + "]"
        Catch ex As Exception
            Timer.Enabled = False
            MsgBox("В полях данных введены неверные символы или заполнены не все поля.")
        End Try
    End Sub

    Private Sub Stropil_OPT(ByVal num) 'Расчет кубатуры в зависимости от сечения стропил
        If FormatStropil.Text = "50/200/6000" Then
            s = Val(s * 0.2 * 0.05)
        End If
        If FormatStropil.Text = "50/150/6000" Then
            s = Val(s * 0.15 * 0.05)
        End If
        If FormatStropil.Text = "42/142/6000(строг.)" Then
            s = Val(s * 0.142 * 0.042)
        End If
        If FormatStropil.Text = "42/185/6000(строг.)" Then
            s = Val(s * 0.185 * 0.042)
        End If
        If StropilSymmetry1.Checked = True And num = 1 Then
            s = Val(s * 2)
        End If
        If StropilSymmetry2.Checked = True And num = 2 Then
            s = Val(s * 2)
        End If
        If StropilSymmetry3.Checked = True And num = 3 Then
            s = Val(s * 2)
        End If
    End Sub

    Private Sub Raschet_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Raschet.Click
        Info.Text = ""
        ProgBar.Value = 0
        Timer.Enabled = True
    End Sub

    Private Sub Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer.Tick
        Try
            If Val(ProgBar.Value) < 40 Then
                ProgBar.Value = Val(ProgBar.Value + 2)
            Else
                ProgBar.Value = Val(ProgBar.Value + 1)
            End If
            If ProgBar.Value = 100 Then
                System.Threading.Thread.Sleep(300)
                Ras4et()
                Timer.Enabled = False
            End If
        Catch ex As Exception

        End Try
    End Sub

    Private Sub Nabor1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Nabor1.CheckedChanged
        If Nabor1.Checked = True Then
            LengthRoof1.Enabled = True
            LengthStropil1.Enabled = True
            StropilSymmetry1.Enabled = True
        Else
            LengthRoof1.Enabled = False
            LengthStropil1.Enabled = False
            StropilSymmetry1.Enabled = False
        End If
    End Sub

    Private Sub Nabor2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Nabor2.CheckedChanged
        If Nabor2.Checked = True Then
            LengthRoof2.Enabled = True
            LengthStropil2.Enabled = True
            StropilSymmetry2.Enabled = True
        Else
            LengthRoof2.Enabled = False
            LengthStropil2.Enabled = False
            StropilSymmetry2.Enabled = False
        End If
    End Sub

    Private Sub Nabor3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Nabor3.CheckedChanged
        If Nabor3.Checked = True Then
            LengthRoof3.Enabled = True
            LengthStropil3.Enabled = True
            StropilSymmetry3.Enabled = True
        Else
            LengthRoof3.Enabled = False
            LengthStropil3.Enabled = False
            StropilSymmetry3.Enabled = False
        End If
    End Sub

    Private Sub NewRaschet_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NewRaschet.Click
        ProjectName.Text = ""
        OneFloor.Checked = True
        TwoFloor.Checked = False
        BlockHeight170.Checked = True
        BlockHeight135.Checked = False
        SOutWall.Text = "0"
        SInWall.Text = "0"
        S0floor.Text = "0"
        S1floor.Text = "0"
        S2floor.Text = "0"
        LengthRoof1.Text = "0"
        LengthStropil1.Text = "0"
        LengthRoof2.Text = "0"
        LengthStropil2.Text = "0"
        LengthRoof3.Text = "0"
        LengthStropil3.Text = "0"
        Nabor1.Checked = True
        StropilSymmetry1.Checked = False
        StropilSymmetry2.Checked = False
        StropilSymmetry3.Checked = False
        Nabor2.Checked = False
        LengthRoof2.Enabled = False
        LengthStropil2.Enabled = False
        StropilSymmetry2.Enabled = False
        Nabor3.Checked = False
        LengthRoof3.Enabled = False
        LengthStropil3.Enabled = False
        StropilSymmetry3.Enabled = False
        Info.Text = ""
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim SW As New System.IO.StreamWriter((TextBox1.Text).ToString + " предварительная смета.doc", False, System.Text.Encoding.Default)
        SW.Write(Info.Text)
        SW.Close()
        MsgBox("Сохранение прошло успешно!", MsgBoxStyle.SystemModal = MsgBoxStyle.Information)
    End Sub



End Class

Автор: diadiavova 2.6.2011, 14:01
Larec, ты предлагаешь кому-то сидеть, изучать твой код, разбираться, что он делает и догадаться, что значит вставить туда СУБД?

Автор: Larec 2.6.2011, 14:12
Программа несложная,что-то типа калькулятора.Нужно вставить туда базу данных,любую,например mysql и т.д.,кроме акссесса.....Можете хоть идею подкинуть,как это сделать...

Автор: diadiavova 2.6.2011, 14:17
Цитата(Larec @  2.6.2011,  15:12 Найти цитируемый пост)
Можете хоть идею подкинуть,как это сделать... 

Так через интерфейс студии все это делается. Просто добавь новый элемент в проект, в диалоге добавления нового элемента выбери раздел "Данные", там можно выбрать например локальную базу данных. Дальше работать с ней с помощью датасетов, лучше добавить в проект типизированных датасет(тем же самым способом, что и базу). Ну, а дальше документация. Возникнут более конкретные траблы - спрашивай.

Добавлено через 47 секунд
И да, это будет не мускул, а SQL Server. Для работы с мускулом нужны сторонние компоненты.

Автор: Larec 2.6.2011, 14:24
Легко будет разобраться?а то и времени и знаний с базами особо нету(

Автор: diadiavova 2.6.2011, 14:30
Цитата(Larec @  2.6.2011,  15:24 Найти цитируемый пост)
Легко будет разобраться?

В базовых операциях, при наличии базовых знаний(ну, хотя бы надо понимать, что из себя база данных представляет) - никаких проблем. Тем более, что многое понятно интуитивно, и даже в коде многих вещей писать не придется. Что-то более серьезное потребует более серьезного изучения.

http://msdn.microsoft.com/ru-ru/library/wzabh8c4.aspx 

Автор: Larec 2.6.2011, 14:37
Спасибо,попытаюсь разобраться)

Автор: Larec 2.6.2011, 17:31
Не могу чет сообразить...создал базу,а как ее присоединить к существующей проге?

Автор: krewin 2.6.2011, 17:34
Могу рекомендовать использовать sqlite. Добавь в проект dll вот от сюда можешь скачать http://www.sqlite.org/download.html. Ищи после установки sqlite в папке compactframework (добавить ссылки). 

вот пример кода создание базы данных

Код

   Dim conn As New System.Data.SQLite.SQLiteConnection
        Dim command As New System.Data.SQLite.SQLiteCommand
        ' SQLLIT
    

  If IO.File.Exists(CurDir() & "\database\inn.db") = False Then ' проверяет если такая бд вобще если нет то создать

            conn.ConnectionString = "Data Source=" & CurDir() & "\database\inn.db;Version=3;New=False;Compress=True"
            conn.Open()

            command = conn.CreateCommand()
            command.CommandText = "CREATE TABLE NameSpace (id integer primary key AUTOINCREMENT, name varchar(500), adress varchar(500), ogrn varchar(20), inn varchar(20), kpp varchar(20), rs varchar(20), bik varchar(9), okpo varchar(9), ks varchar(20), ogrnbanka varchar(20), kppbanka varchar(10), bank varchar(500), adressbank varchar(500), contact varchar(100), rezerv varchar(100))"
            command.ExecuteNonQuery()
            conn.Close()
        End If


это пример базы данных фирм 

Код

    Dim conn As New System.Data.SQLite.SQLiteConnection
 conn.ConnectionString = "Data Source=" & CurDir() & "\database\inn.db;Version=3;New=False;Compress=True"
            conn.Open()
 Dim command As New System.Data.SQLite.SQLiteCommand
 command = conn.CreateCommand()
        command.CommandText = "INSERT INTO NameSpace (name, adress, ogrn, inn, kpp, rs, bik, okpo, ks, ogrnbanka, kppbanka, bank, adressbank, contact) VALUES ('" & TextBox1.Text & "', '" & TextBox2.Text & "', '" & TextBox3.Text & "', '" & TextBox4.Text & "', '" & TextBox5.Text & "', '" & TextBox6.Text & "', '" & TextBox7.Text & "', '" & TextBox8.Text & "', '" & TextBox9.Text & "', '" & TextBox10.Text & "', '" & TextBox11.Text & "', '" & TextBox12.Text & "', '" & TextBox13.Text & "', '" & TextBox14.Text & "')"
        command.ExecuteNonQuery()

добовляем строку


Код

 Dim command As New System.Data.SQLite.SQLiteCommand
        command = conn.CreateCommand()

        command.CommandText = "UPDATE NameSpace SET name='" & TextBox1.Text & "', adress='" & TextBox2.Text & "', ogrn='" & TextBox3.Text & "', inn='" & TextBox4.Text & "', kpp='" & TextBox5.Text & "', rs='" & TextBox6.Text & "', bik='" & TextBox7.Text & "', okpo='" & TextBox8.Text & "', ks='" & TextBox9.Text & "', ogrnbanka='" & TextBox10.Text & "', kppbanka='" & TextBox11.Text & "', bank='" & TextBox12.Text & "', adressbank='" & TextBox13.Text & "', contact='" & TextBox14.Text & "' WHERE id=" & Select_item
        ' "VALUES ('" & TextBox1.Text & "', '" & TextBox2.Text & "', '" & TextBox3.Text & "', '" & TextBox4.Text & "', '" & TextBox5.Text & "', '" & TextBox6.Text & "', '" & TextBox7.Text & "', '" & TextBox8.Text & "', '" & TextBox9.Text & "', '" & TextBox10.Text & "', '" & TextBox11.Text & "', '" & TextBox12.Text & "', '" & TextBox13.Text & "', '" & TextBox14.Text & "') WHERE id=" & Select_item

        command.ExecuteNonQuery()


изменение строки


Вот таким макаром тебе надо использовать простейшую БД на основе SQL запросов. Но есть способ проще если тебе не нужен SQL то без проблем можно юзать простейший метод записи в файл если интересует могу дать ссылку.

Автор: Larec 2.6.2011, 17:40
Спасибо...в методичке диплома написано,чтоб СУБД было обязательно в проге,так что sql как я понимаю необходим

Автор: diadiavova 2.6.2011, 18:45
Цитата(Larec @  2.6.2011,  18:31 Найти цитируемый пост)
Не могу чет сообразить...создал базу,а как ее присоединить к существующей проге? 

Если ты ее уже создал, да еще тем способом, о котором я написал, то она у тебя уже есть в проекте. Кроме нее мастер добавления базы добавил так же датасет(посмотри в проводнике проектов). Вот его тебе и надо использовать для работы с базой из программы. Если откроешь его в дизайнере, то сможешь добавлять запросы и прочую дребедень. Там много возможностей. Дальше можно создавать экземпляры этого датасета, как в дизайнере форм, так и в коде(первое проще). Кроме того ты можешь привязывать элементы управления к источникам данных, а этот датасет у тебя уже доступен в источниках(посмотри в окне "Источники данных"). Объяснить что-то еще можно только зная, что конкретно тебе надо сделать с базой.

Чтоб создать структуру базы и набор данных, открой окно "Обозреватель серверов"(или "Базы данных", если пользуешься экспресс-версиями студии), так найди свою базу и редактируй, возможности увидишь через контекстное меню и кнопочки на окне.

Автор: Larec 7.6.2011, 18:05
Вот дошел до этого этапа http://s2.ipicture.ru/uploads/20110607/G4PTJq6O.jpg что дальше делать?(

Автор: diadiavova 7.6.2011, 18:13
Цитата(Larec @  7.6.2011,  19:05 Найти цитируемый пост)
что дальше делать?( 

Полагаю это зависит от того, что именно тебе нужно. Вопрос был о подключении базы к проекту. Если ты дошел до этого этапа, то эту задачу ты решил. Вопрос в том, что тебе нужно: отобразить данные в каком-нибудь гриде или еще где; работать с ними программно без визуального представления и т. д. Сформулируй задачу яснее.

Автор: Larec 7.6.2011, 18:17
Нужно чтоб в  БД шло сохранение , надо сохранять  Info.Text, также заказчик, название проекта в отдельный столбец в строке для быстрого поиска

Автор: diadiavova 7.6.2011, 18:38
Ты явно рассчитываешь на мои телепатические способности. Что такое info.text, и что значит его сохранять? Какой такой заказчик, название проекта и все остальное? Ты можешь нормальным языком описать, что делает твоя программа, где находятся и откуда берутся данные, которые надо сохранять и все прочие детали?
Если все это в элементах управления, то в свойствах элемента открой раздел DataBinding и привяжи нужные свойства к соответсвующим полям таблицы, там есть графические инструменты, с помощью которых легко все делается. Можешь добавить датасет на форму вручную, тогда еще добавь BindingSource и подключай контролы через него. Если речь о контролах типа DataGridView, ComboBox, ListBox, то используй свойства DataSource DataMember(или DisplayMember) и привязку выполняй через них.
А то, о чем пишешь ты вообще лишено смысла. По крайней мере я тебя не понимаю. smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)