Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di kobe83
    Registrato dal
    Sep 2008
    Messaggi
    89

    creare tabella su db MySql

    Ciao a tutti.
    Innanzitutto ne approfitto per salutarvi dal momento che è il primo post che scrivo (probabilmente di una lunga serie).
    Metto le mani avanti e vi dico subito che sono un novizio della programmazione asp, non ho trovato la risposta che cercavo, perciò mi vedo costretto ad aprire un nuovo topic.

    Conclusa la premessa, vi espongo il mio problema.
    In sostanza ho un db MySql, stò facendo delle prove per imparare, e vorrei creare sul mio db che si chiama "fantacalcio" una tabella denominata "giocatori" in modo da aggiungere successivamente i nomi dei giocatori.
    Il mio problema è che non riesco a capire come fare dalla mia pagina Default.aspx una subroutine che mi crei la tabella all'interno del mio db.
    Vi posto il mio sorgente, spero che qualcuno mi possa aiutare. Se avete anche qualche buon link di riferimento ve ne sarei molto grato.

    Ciao!

    <%@ page language="vb" autoeventwireup="false" %>
    <%@ import namespace="mysql.data.mysqlclient" %>
    <%@ import namespace="system.data" %>

    <html>

    <head>

    </head>

    <script runat="server">

    private conn as mysqlconnection

    sub page_init (sender as object, e as eventargs) handles me.init

    if page.ispostback then
    'response.write(" pagina in postback ")
    end if

    end sub

    sub page_load(sender as object, e as eventargs) handles me.load

    'response.write(" questa è la sub di load ")

    end sub

    sub page_prerender(sender as object, e as eventargs) handles me.prerender

    'response.write(" Prerender ")

    end sub

    sub page_disposed(sender as object, e as eventargs) handles me.disposed

    'response.write(" Disposed ")

    end sub

    sub gestione_button(sender as object, e as eventargs) handles button.click

    'Response.Write(textbx.Text)
    connetti_database()
    crea_tabella() 'creo la tabella

    If Not (controlla_tabella("giocatori")) Then
    Response.Write(" La tabella giocatori NON esiste")
    Else
    Response.Write(" La tabella giocatori esiste")
    End If
    disconnetti_database()

    end sub

    sub connetti_database()

    try
    conn=new mysqlconnection("server=localhost; database=fantacalcio; user id=root; password=xxxxxxxx")
    conn.Open()
    Catch eccezione As Exception
    Response.Write(eccezione.Message)
    end try

    end sub

    sub disconnetti_database()

    conn.close

    end sub

    Function controlla_tabella(ByVal nometabella As String) As Boolean

    Try
    Dim ds As DataSet
    Dim dbda As MySqlDataAdapter = New MySqlDataAdapter
    dbda.SelectCommand = New MySqlCommand("select * from " & nometabella, conn)
    dbda.Fill(ds)
    ds = Nothing
    Return True
    Catch eccezione As Exception
    Return False
    End Try

    End Function

    Sub crea_tabella() 'sub che se dio vuole mi crea la tabella e lo richiamo all'interno di gestione button
    Try
    Dim crt As MySqlDataAdapter = New MySqlDataAdapter
    crt.SelectCommand = New MySqlCommand("CREATE TABLE giocatori(nome, char(40))", conn)
    Response.Write("sono all'interno di creatabella ")
    Catch eccezione As Exception
    Response.Write(eccezione.Message)
    End Try
    End Sub




    </script>
    <form runat="server">
    <asp:label runat="server" id="label1" text="Inserire nome giocatore: " />
    <asp:textbox runat="server" id="textbx" textmode="singleline" />
    <asp:button runat="server" id="button" text="Inserisci" />
    </form>

    <body>

    </body>
    </html>

  2. #2
    per creare la tabella non devi usare DataAdapter, utilizza il metodo ExecuteNonQuery dell'oggetto Command.

    Qua ci sono degli esempi per lìutilizzo di ADO.NET.

    http://dn.codegear.com/article/31906
    ...NO ONE IS INNOCENT ANYMORE...

  3. #3
    Utente di HTML.it L'avatar di kobe83
    Registrato dal
    Sep 2008
    Messaggi
    89
    Giuro che non riesco a cavarne un ragno dal buco, tra un pò mi taglio le vene con il cavo del mouse.

    Salvami per favore, dammi una spiegazione alle cavolate che ho fatto.

    io ho risolto in questo modo, il problema è che continua a dirmi che la tabella non esiste:
    Public Sub crea_tabella()
    Try
    Using connection As New SqlConnection("server=localhost; database=fantacalcio; user id=root; password=gabriele")
    Dim command As New SqlCommand("CREATE TABLE giocatori(nome, char(40))", connection)
    command.Connection.Open()
    command.ExecuteNonQuery()
    connection.Close()
    End Using
    Catch ex As Exception
    End Try
    End Sub

  4. #4
    Forse questo esempio è più corretto per quello che devi fare tu.

    http://dev.mysql.com/doc/refman/5.0/...qlcommand.html


    La tua funzione Crea_Tabella() dovrà essere modificata in questo modo :

    codice:
    Sub crea_tabella() 'sub che se dio vuole mi crea la tabella e lo richiamo all'interno di gestione button
    Try
    
        Dim oConn as new mysqlconnection("server=localhost; database=fantacalcio; user id=root; password=xxxxxxxx")
        Dim oCommand as new MySqlCommand("CREATE TABLE giocatori(nome, char(40))", oConn)
    
        oCommand.ExecuteNonQuery()
    
    Catch eccezione As Exception
    Response.Write(eccezione.Message)
    End Try
    End Sub
    ...NO ONE IS INNOCENT ANYMORE...

  5. #5
    Utente di HTML.it L'avatar di kobe83
    Registrato dal
    Sep 2008
    Messaggi
    89
    Grazie tante, sei stato gentilissimo.
    Ho risolto in questa maniera:

    Sub crea_tabella() 'sub che se dio vuole mi crea la tabella e lo richiamo all'interno di gestione button
    Try

    Dim conn As New MySqlConnection("server=localhost; database=fantacalcio; user id=root; password=********")
    Dim oCommand As New MySqlCommand("CREATE TABLE giocatori(id INT(11) default NULL auto_increment,s char(60) default NULL,PRIMARY KEY (id))", conn)
    oCommand.Connection.Open()
    oCommand.ExecuteNonQuery()
    oCommand.Connection.Close()

    Catch eccezione As Exception
    Response.Write(eccezione.Message)
    End Try
    End Sub

  6. #6
    di nulla
    ...NO ONE IS INNOCENT ANYMORE...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.