CRIAR UMA FUNCAO DE UM PROCEDURE DE CRIACAO DE TAB

CAROLYTA 28/12/2012 08:29:58
#416498
eu fiz assim mais tb nao vai...
Imports System.Data.SqlClient

Module Module1


Public Conexao As New SqlConnection
Public Reader As SqlDataReader

Public objConexaoBD As New Classes.ConexaoBD
Public objAmbienteSQL As New Classes.AmbienteSQL

End Module

Public Class ConexaoBD

Dim connetionString As String = [Ô]Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=engenharia1;Data Source=CAROL\SQLEXPRESS[Ô]
Dim connectionstring As String

Public Sub Conectar()
With Conexao

[ô] Abre a conexao
If Conexao.State = ConnectionState.Open Then
Conexao.Close()
End If
If Not .State = ConnectionState.Open Then [ô]Verifica se a conexão já está aberta
.ConnectionString = [Ô]Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=engenharia1;Data Source=CAROL\SQLEXPRESS[Ô]

.Open() [ô]Abre a conexão com o BD
End If
End With

End Sub

Public Sub Desconectar()
Try
Reader.Close() [ô]Fecha o Reader
Reader = Nothing
Catch ex As Exception
Reader = Nothing
Finally
If Conexao.State = ConnectionState.Open Then Conexao.Close() [ô]Verifica se a conexão está abreta. Se estiver então fecha.
End Try
End Sub
End Class

Public Class AmbienteSQL
[ô][ô][ô] <summary>
[ô][ô][ô] Insere, Atualiza ou Deleta dados no BD, de acordo com o comando SQL passado
[ô][ô][ô] </summary>
[ô][ô][ô] <qualStringSQL>Comando SQL a ser executado</qualStringSQL>
[ô][ô][ô] <remarks></remarks>
Public WriteOnly Property GravaResultados() As String
Set(ByVal qualStringSQL As String) [ô]Comando SQL para ser executado
Using Adapter As New SqlCommand

With Adapter
Try
If qualStringSQL.StartsWith([Ô]create[Ô]) Then [ô]Caso seja par inserir dados

Dim comando As SqlCommand = Conexao.CreateCommand
comando.CommandType = CommandType.StoredProcedure
comando.CommandText = [Ô]createcliente[Ô]
Try
Conexao.Open()
comando.ExecuteNonQuery()

Conexao.Close()


Catch ex As Exception
Console.WriteLine()
End Try
End If
Catch ex As Exception
Console.WriteLine()
End Try

End With
End Using
End Set
End Property


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click



objConexaoBD.Conectar() [ô]Faz conexão com o Banco de dados

[ô]Aqui executa código caso NÃO dê erro na conexão
sql = [Ô]CREATE TABLE cliente[Ô] + [Ô]Nome CHAR(50),RG CHAR(20),CPF char(20),datanasc date,telefone char(20), telcom char(20), celular char(20), Endereco CHAR(50),bairro char(30), cidade char(30), cep char(20), estado char(2), contato char(50),site char(50), email char(50),referencia char(50),observacao char(100))[Ô]
objAmbienteSQL.GravaResultados = sql
End Sub



procedure

ALTER PROCEDURE dbo.createcliente
@codigo integer,
@nome char(50),
@rg char(20),
@cpf char(20),
@datanasc date,
@nomefan char(50),
@telefone char(20),
@telecom char(20),
@celular char(20),
@endereco char(50),
@bairro char(30),
@cidade char(50),
@cep char(20),
@estado char(4),
@contato char(50),
@site char(50),
@email char(50),
@referencia char(50)
AS
CREATE TABLE Cliente(codigo INTEGER CONSTRAINT PKeyMyId PRIMARY KEY,
Nome CHAR(50),RG CHAR(20),CPF char(20),datanasc date,telefone char(20), telcom char(20), celular char(20), Endereco CHAR(50),bairro char(30), cidade char(30), cep char(20), estado char(2), contato char(50),site char(50), email char(50),referencia char(50),observacao char(100))



desce jeito tb nao estou conseguindo a tambem criar a tabela
PEGUDO 28/12/2012 11:22:12
#416511
Pegue esta alteração no programa.

Agora, para mais informações como criar tabelas, aconselho acessar estes links
https://sites.google.com/site/programacaoonline/family-blog/vb-net/criando-um-banco-access-em-tempo-de-execucao
http://dev.mysql.com/doc/refman/5.1/en/create-table.html
http://www.academictutorials.com/Pt/sql/sql-create.asp

Lembre-se que no comando INSERT eu utilizei dados fixos, você deve mudar para as variáveis que você quer, por exemplo:
Para o nome: [txt-color=#e80000][ô]Antonio[ô][/txt-color], você deve trocar para [txt-color=#e80000]@Nome[/txt-color] e assim por diante
CAROLYTA 28/12/2012 13:39:55
#416513
as funçoes de insert e de update e delete e select eu ja tenho... mais valeu pela dica... o meu problema so ta sendo criar a tabela.. mais vou testar o que vc me mandou
CAROLYTA 28/12/2012 21:57:30
#416526
consegui valeu e esse comando mesmo.. so mudei a forma de criar a tabela.. pq o executenoquery() nao recebe AUTOINCREMENT.. vlw
CAROLYTA 28/12/2012 22:27:54
#416527
Surgiu um novo problema.. em um botao eu criou mais de umas tabela.. porem estou usando esse comando.. mais ele so gera a primeira tabela.. ai fez um teste com um IF e uma msg apos a criação da primeira tabela e a msg nao mostru tb... depois fiz o teste com o insert que voce criou dentro do IF tb nao esta preenchendo.
PEGUDO 31/12/2012 10:55:40
#416581
Oi, demorei para responder porque só volto a trabalhar na Quarta-feira.
Não entendi seu problema. Tente ser mais clara possível.

O que está acontecendo?
O que você quer fazer depois de criar a tabela?
Você quer criar mais de uma tabela? Se não, não vai conseguir criar uotra tabel porque o CREATE TABLE não deixa criar mais de uma tabela com o mesmo nome.

Se você quiser inserir dados em uma tabela já criada você tem que tirar o CREATE TABLE do comando SQL e deixar apenas o [Ô][txt-color=#e80000]INSERT INTO tblCliente[/txt-color][Ô].
Se você quiser alterar algum dado em uma registro já existente na tabela, você tem que usar o comando UPDATE. Por exemplo: [Ô][txt-color=#e80000]UPDATE tblCliente SET nome = @nomeNovo[/txt-color][Ô]
CAROLYTA 31/12/2012 13:44:07
#416588
Vc nao criou um if no botão após o create com o insert. Pois então esse if nao funciona.pois quando ele achama a função do create nao esta retornando nem para desconectar o banco.pq irei usar esse comando mais de uma vez pq são varias tabelas eu queria criar um botão so para criar essas tabelas.
PEGUDO 31/12/2012 15:49:49
#416589
Ok.
Pelo que vi você quer criar uma tabela pra cada cliente não é?
Não é uma prática não muito boa mas vou ver isto pra você.

Como já mencionei, só volto a trabalhar Quarta-Feira, então se alguém não te ajudar até lá, eu dou uma olhada pra você.
CAROLYTA 31/12/2012 17:20:47
#416595
Ainda nao e isso. Estou criando um botão aonde ele vai criar as tabelas para ir chamando as funções. Por exemplo cliente, fornecedor, produto. Tudo em um único botão.para nao ter vários botões.espero que eu tenha conseguido explicar
PEGUDO 31/12/2012 22:08:25
#416601
Pega aí a última atualização que eu fiz no programa que te enviei.
Sinceramente, se não for isto que você quer, infelizmente, não poderei te ajudar mais por não saber exatamente o que seu programa vai fazer em relação a criar tabelas e inserir clientes.

Lembre-se que não fiz tratamento de erro nenhum.
Então se algum campo for obrigatório você terá de criar um tratamento para exibir isto ao usuário antes de inserir o novo cliente.

Abraços.
Página 2 de 4 [35 registro(s)]
Tópico encerrado , respostas não são mais permitidas