Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di ghini76
    Registrato dal
    Jun 2003
    Messaggi
    560

    SQL Server 2000 CE - Qualcuno lo conosce?

    Devo usare per la prima volta SQL Server CE e non ho mai usato neanche SQL Server!!
    Devo in pratica accedere a un db su un palmare... ma non so da dove cominciare. Innanzitutto vorrei chiedere se la versione CE serve solo per sincronizzarsi con un SQL Server o può gestire in modo completamente autonomo un db?

    Grazie a tutti

  2. #2
    No la versione CE è una vera e propria applicazione database. Ovviamente ha tantissime limitazioni rispetto alla versione server da utilizzare su Win2k/2003.

    Dai un'occhiata al sito ufficiale, è ricco di informazioni: http://www.microsoft.com/sql/CE/default.asp

  3. #3
    Utente di HTML.it L'avatar di ghini76
    Registrato dal
    Jun 2003
    Messaggi
    560
    Grazie! Preziosissimo!

    Come dicevo non ho mai usato neanche SQL Server e sono abituato a gestire con Visual Basic e vb.net i db Access. Come faccio a creare un db con SQL Server CE?
    Poi per il resto me la sbroglio da solo, o almeno ci provo...

    grazie

  4. #4
    Originariamente inviato da ghini76
    Grazie! Preziosissimo!

    Come dicevo non ho mai usato neanche SQL Server e sono abituato a gestire con Visual Basic e vb.net i db Access. Come faccio a creare un db con SQL Server CE?
    Poi per il resto me la sbroglio da solo, o almeno ci provo...

    grazie
    Comincia con lo scaricare la guida ufficiale: http://www.microsoft.com/sql/ce/techinfo/20bol.asp

    Tieni conto che è un server db a tutti gli effetti.. per creare database ad es. puoi collegarti via shell al server e utilizzare l'istruzione CREATE DATABASE.
    Ci sarà ovviamente qualche tool lato client che ti permette di amministrare il server ma purtroppo non ho mai avuto modo di provare questo applicativo quindi non ti so dare altre indicazioni a riguardo


  5. #5
    Utente di HTML.it L'avatar di ghini76
    Registrato dal
    Jun 2003
    Messaggi
    560
    Grazie alla documentazione che mi hai sufggerito di leggere, a MSDN e ad altro materiale vario sono riuscito a creare il db e le sue table. Il problema ora mi si presenta sull'operazione, che pensavo, più facile ed immediata... l'INSERT! Un banale INSERT mi ha messo in difficoltà!!!

    Questo codice SQL mi crea il db perfettamente ma quando esegue l'INSERT mi restituisce un errore. Tra l'altro la msgbox mi viene creata vuota in quanto err.message è = a ""


    codice:
    If Not File.Exists(DbPath) Then
       Try
          SQLEngine = New SqlCeEngine("data source=" + DbPath)
          SQLEngine.CreateDatabase()
    
          ' apre il db
          cn = New SqlCeConnection("Data Source=" + DbPath)
          cn.Open()
    
          ' Crea la tabella ANAGRAFICA INTERVENTI (TInt_Ana)
          SQL = "CREATE TABLE TInt_Ana ("
          SQL = SQL + "Int_ID nchar(6) Primary Key NOT NULL,"
          SQL = SQL + "Int_Imp nvarchar(10) NOT NULL,"
          SQL = SQL + "Int_Pri smallint NOT NULL,"
          SQL = SQL + "Int_Typ smallint NOT NULL,"
          SQL = SQL + "Int_Sta smallint NOT NULL,"
          SQL = SQL + "Int_Dsc nvarchar(255) NOT NULL,"
          SQL = SQL + "Int_Pda nchar(4) NOT NULL)"
          Dim cmd As New SqlCeCommand(SQL, cn)
          cmd.CommandType = CommandType.Text
          cmd.ExecuteNonQuery()
    
          ' Crea la tabella PRIORITA' INTERVENTI (TInt_Pri)
          SQL = "CREATE TABLE TInt_Pri ("
          SQL = SQL + "Pri_ID smallint Primary Key NOT NULL,"
          SQL = SQL + "Pri_Dsc nchar(15) NOT NULL)"
          cmd.CommandText = SQL
          cmd.ExecuteNonQuery()
    
    
           ' Crea la tabella RICHIESTA INTERVENTI (TInt_Ric)
           SQL = "CREATE TABLE TInt_Ric ("
           SQL = SQL + "Ric_ID smallint Primary Key NOT NULL,"
           SQL = SQL + "Ric_Dsc nchar(15) NOT NULL)"
           cmd.CommandText = SQL
           cmd.ExecuteNonQuery()
    
           ' Carica un intervento nella tabella ANAGRAFICA INTERVENTI
           SQL = "INSERT INTO TInt_Ana (Int_Imp) VALUES ('000023')"
           cmd.CommandText = SQL
           cmd.ExecuteNonQuery()
    
           cn.Close()
       Catch err As Exception
           MsgBox(err.Message, MsgBoxStyle.Critical)
    End Try

    Dove sbaglio?
    Ho controllato il codice 1000 volte e mi sembra corretto!
    Grazieeee

  6. #6
    Beh da quello che hai scritto, crei la tabella TInt_Ana con 7 campi e tutti non nulli.
    Poi cerchi di inserirci un record indicando solo un campo. Ovviamente va in errore. O metti dei valori di default oppure indichi un valore per tutti i campi della tabella:

    codice:
    SQL = "INSERT INTO TInt_Ana (Int_ID, Int_Imp, Int_Pri, Int_Typ, Int_Sta, Int_Dsc, Int_Pda) VALUES ('123456', '000023', 0, 0, 0, 'blablabla', '1234')"
    Prova e fammi sapere

  7. #7
    Utente di HTML.it L'avatar di ghini76
    Registrato dal
    Jun 2003
    Messaggi
    560
    Hai ragione!
    Non so cosa dire a parte che questo deve essere anche uno dei sintomi della sbornia di ieri sera!!

    Grazie tante e sucsa la banalità del mio errore

  8. #8

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.