
Paulo Jardim
Membros-
Total de itens
77 -
Registro em
-
Última visita
Tudo que Paulo Jardim postou
-
public void cadastraUsuario() { UsuarioControl usr = new UsuarioControl(); UsuarioFields usf = new UsuarioFields(); usf.login = tbNome.Text; usr.Add( } Não sei o que adicionar nesse metodo add
-
Galera, Criei meu Banco pelo DBdesign e usei o DAL creastor que me deu todos os controls, fields, validators e a procedures, Mas agora estou perdido em como utilizar isso. Por isso que digo que é mais sobre orientação a objeto que mesmo de .NET mas como meu programa é em .NET gostaria da ajuda de vocês. A questão é a seguinte. Tenho um webform que tem 2 tb e 2 bt usuario .............. senha ............... gostaria de inserir isso no banco. para isso tenho o metodo. #region Inserindo dados na tabela /// <summary> /// Grava/Persiste um novo objeto DeclaracaoFields no banco de dados /// </summary> /// <param name="FieldInfo">Objeto DeclaracaoFields a ser gravado.Caso o parâmetro solicite a expressão "ref", será adicionado um novo valor a algum campo auto incremento.</param> /// <returns>"true" = registro gravado com sucesso, "false" = erro ao gravar registro (consulte a propriedade ErrorMessage para detalhes)</returns> public bool Add( ref DeclaracaoFields FieldInfo ) { try { this.Conn = new SqlConnection(this.StrConnetionDB); this.Conn.Open(); this.Tran = this.Conn.BeginTransaction(); this.Cmd = new SqlCommand("Proc_Declaracao_Add", this.Conn, this.Tran); this.Cmd.CommandType = CommandType.StoredProcedure; this.Cmd.Parameters.Clear(); this.Cmd.Parameters.AddRange(GetAllParameters(FieldInfo, SQLMode.Add)); if (!(this.Cmd.ExecuteNonQuery() > 0)) throw new Exception("Erro ao tentar inserir registro!!"); this.Tran.Commit(); FieldInfo.idDeclaracao = (int)this.Cmd.Parameters["@Param_idDeclaracao"].Value; return true; } catch (SqlException e) { this.Tran.Rollback(); //this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar inserir o(s) registro(s) solicitados: Código do erro: {0}, Mensagem: {1}, Procedimento: {2}, Linha do erro {3}.", e.ErrorCode, e.Message, e.Procedure, e.LineNumber); this._ErrorMessage = string.Format(@"Houve um erro imprevisto ao tentar inserir o(s) registro(s) solicitados: {0}.", e.Message); return false; } catch (Exception e) { this.Tran.Rollback(); this._ErrorMessage = e.Message; return false; } finally { if (this.Conn != null) if (this.Conn.State == ConnectionState.Open) { this.Conn.Dispose(); } if (this.Cmd != null) this.Cmd.Dispose(); } } #endregion Tb tenho isso: public class UsuarioFields { private int _idUsuario = 0; /// <summary> /// Tipo de dados (DataBase): Int /// Somente Leitura/Auto Incremental /// </summary> public int idUsuario { get { return _idUsuario; } set { _idUsuario = value; } } private string _login = string.Empty; /// <summary> /// Tipo de dados (DataBase): varchar /// Preenchimento obrigatório: Sim /// Estilo: Normal /// Tamanho Máximo: 10 /// </summary> public string login { get { return _login.Trim(); } set { _login = value.Trim(); } } private int _senha = 0; /// <summary> /// Tipo de dados (DataBase): int /// Preenchimento obrigatório: Sim /// Permitido: Maior que zero /// </summary> public int senha { get { return _senha; } set { _senha = value; } } public UsuarioFields() {} public UsuarioFields( string Param_login, int Param_senha) { this._login = Param_login; this._senha = Param_senha; } } e isso:
-
(Resolvido) Ajuda com Modelação de banco
pergunta respondeu ao Paulo Jardim de Paulo Jardim em SQL Server
AJudou muito... Valeu mesmoFUlvio :) -
Galera, Estou desenvolvendo um sistema mais estou em dúvida sobre como modelar meu banco. Segue abaixo uma simplificação de como funcionará: EX: Uma loja tem um numero e uma razão social. Um auditor tem um login e uma planilha onde ele irá anotar as seguintes informações sobre as vendas da loja Data; N. Ponto de venda (PDV); Tipo de Documento; que pode ser Redução Z( RDZ) recarga, devolução, seguro garantia, etc. N. Documento; Valor Total por cada Documento. Observações E o nome do auditor. Além disso existem 3 tipos de declaraçõs de vendas. Uma feita pelo auditor, outra pelo dono da loja e mais uma. qual a melhor forma de modular esse banco? E quanto essa última regra. Como façõ pra ter declarações de uma mesma data e organizar isso? Além disso nçao entendo como fazer para que uma loja tenha vários pontos de vendas e quantidades diferentes OBS: estou usando Dbdesign. Grato Paulo Jardim
-
Perfeito Xistyle Olha só :) private void DeletaRegistro() { try { string sSql = ""; sSql = "DELETE FROM Aluno WHERE Nome = '" + tbNome.Text + "' "; dados dado = new dados(); dado.ExecutaAcao(sSql); } catch (Exception ex) { throw (ex); } } Rs agora já enteni como funciona... :) acho que estou pegando o ojeito muito obrigado mesmo.... Agora preciso de sua ajuda pro select :)
-
Sabe me dizer porque da erro nessa parte? static string mycon = "Data Source=SNSWS20\servidor;Initial Catalog=db_cadastro_aluno;Integrated Security=True"; sequência de escape não reconheçida...ou algo desse tipo.
-
Bom já entendi... Agora tenho de fazer esses dados retornar em um data table né? vou tentar
-
porque ta dando erro aqui? cmd.Connection = sqlconn; diz que não existe nesse contexto.
-
Consegui conctar e disconectar...ve se é assim: public class dados { string mycon = "Data Source=SNSWS20\servidor;Initial Catalog=db_cadastro_aluno;Integrated Security=True"; private void conecta() { SqlConnection sqlconn = new SqlConnection(mycon); sqlconn.Open(); } private void disconecta() { SqlConnection sqldisc = new SqlConnection(mycon); sqldisc.Close(); sqldisc.Dispose(); } } Agora vou tentar: 3) Rotina para executar comandos não selecionáveis (INSERT/UPDATE/DELETE) 4) Rotina para executar comando selecionável (SELECT) Poderiam me ajudar com esses 2 últmos?
-
é e não consigo aparece o metodo open no sqlconn... rs
-
Sim, mas mesmo sem ele tava dando erro...ai fui ver o error ele disse que era pra num era statico... Ai botei Static deu certo...mais não entendi porque... static string mycon = "Data Source=SNSWS20\servidor;Initial Catalog=db_cadastro_aluno;Integrated Security=True"; SqlConnection sqlconn = new SqlConnection(mycon);
-
num sai do lugar ainda...só lendo na net mais muita informação diferente... tava tentando fazer só isso mais já ta dando erro... public class dados { string mycon = ("Data Source=SNSWS20\servidor;Initial Catalog=db_cadastro_aluno;Integrated Security=True"; SqlConnection sqlconn = new SqlConnection(mycon); }
-
Vou tentarm, na verdade já vi que preciso mesmo dessa classe conforme você descreve aacima.. acho que com isso entenerei melhor como funciona.... vou começar agora criando minha classe
-
FUi tentar fazer... FIcou essa doideira...que eu num entendi...rs static string myConnectionName = "conn"; string conexao= ""; string myConnectionString = ConfigurationManager.ConnectionStrings[myConnectionName].ConnectionString.ToString(); private void CarregaDados() { SqlDataAdapter _da = new SqlDataAdapter(); DataSet _dataSet = new DataSet(); SqlConnection _conexao = new SqlConnection(myConnectionString); SqlCommand _command = new SqlCommand(conexao); _command.CommandText = "SELECT * from Aluno"; _conexao.Open(); _da.Fill(_dataSet, "Retorno"); DataTable _dados = _dataSet.Tables["Retorno"]; foreach (DataRow _linha in _dados.Rows) { tbNome.Text = _linha["Nome"].ToString(); tbTelefone.Text = _linha["Telefone"].ToString(); tbID.Text = _linha["idALuno"].ToString(); } }
-
Entendi...valeu...
-
Quero dizer... eu gotaria de saber como colocar esse código aqui e onde...se é na minha classe de conxão ou onde é,... Tem sim. Quando o usuário abrir a tela que você deseja já ter todos os dados carregados, coloque uma chamada de uma rotina que preencha todos os campos no Form Load: CODE private void Form_Load(object sender, System.EventArgs e) { CarregaDados() } private void CarregaDados() { SqlDataAdapter _da = new SqlDataAdapter(); DataSet _dataSet = new DataSet(); SqlConnection _conexao = new SqlConnection(SUASTRINGCONEXAO); SqlCommand _command = new SqlCommand(conexao); _command.CommandText = "SELECT nome, idade, profissao FROM pessoa"; _conexao.Open() _da.Fill(_dataSet, "Retorno"); DataTable _dados = _dataSet.Tables["Retorno"]; foreach (DataRow _linha in _dados.Rows) { txtNome.Text = _linha["nome"].ToString(); txtIdade.Text = _linha["idade"].ToString(); txtProfissao.Text = _linha["profissao"].ToString(); } }
-
Valeu Xistyle, mas eu posso reaproveitar a minha classe de conexão de que forma? Esse metodo abaixo serve pra me retornar um datatable? public SqlDataReader RecordSet { // Metodo para ler os registros get { return _rsData; } } Se não como faria isso? me desculpe mais sou ignorante ainda nessa linguagem.
-
Galera.... Sendo que há uma classe de conecção que tem um método para retornar os valores... só que como achei isso na internet ainda não sei utilizar....Poderiam me ajudar? #region Definicao de Metodos public void ExecuteCommand(string myConnectionName, string myQueryString) { // Metodo responsavel por executar uma instrução SQL // Recebe como parametro o nome de uma chave do arquivo web.config que contem string de conexão e // a instrução SQL a ser executada pode ser um SELECT ou uma procedure (preferencialmente) // Utililizo Tray..Catch para tratamento de erro try { // Definir valores padrões das variaveis _ErrorMessage = ""; _State = false; // Se não for passado nenhuma chave de conexão do arquivo web.config // vou setar uma chave padrão de conexão do arquivo Web.Config if (myConnectionName.Length == 0) { // Aqui estou indicando o nome da chave que contem a string de conexão no arquivo web.config myConnectionName = "conn"; } string myConnectionString = ConfigurationManager.ConnectionStrings[myConnectionName].ConnectionString.ToString(); // Se não for informado comando T-SQL retorno error if (myQueryString.Length > 0) // Se realmente foi passado um comando a ser executado { // Inicio uma conexão com o banco de dados SqlConnection myConnection = new SqlConnection(myConnectionString); // Abro a conexão myConnection.Open(); // Inicio um comando SqlCommand myCommand = new SqlCommand(myQueryString, myConnection); // Executo um comando com ExecuteReader, pois este retorna dados a um SqlDataReader _rsData = myCommand.ExecuteReader(); // Executo do comando _State = true; // Indico o status da operação _CompleteCommand = true; } } catch (Exception ex) { // Em caso de erro seto as variaveis abaixo _ErrorMessage = ex.Message.ToString(); _State = false; _ErrorNumber = ex.GetHashCode(); } } public SqlDataReader RecordSet { // Metodo para ler os registros get { return _rsData; } } public int ErrorNumber { // Metodo para ler ultimo código de error get { return _ErrorNumber; } } public string ErrorDescription { // Metodo para ler ultima descrição de error get { return _ErrorMessage; } } public bool ConnectionState { // Metodo para ler ultimo status da conexao get { return _State; } } public bool CompleteCommand { // Metodo para ler status do ultimo comando executado. get { return _CompleteCommand; } } #endregion }
-
Gaelra... o método abaixo é o que insere registros no banco... public void InsereRegistro() { try { string sSQL = ""; sSQL = "INSERT INTO Aluno (Nome, Telefone)" + " VALUES ('" + tbNome.Text + "', '" + tbTelefone.Text + "') "; clsConexao ObjConexao = new clsConexao(); ObjConexao.ExecuteCommand("conn", sSQL); Porém, como faço pra selecionar os registros do banco, de forma que no load da página ele já coloque o último cadastrado nos campos, depois se eu clicar em anterior ele retorna para o registro anterior, e o contrario com o próximo registro?
-
Perfeito Xstyle Muito birgado pelas dicas, Vou continuar co meu projeto de criar meu software...ternho certeza que muitas dúvidas vão surgir :P Até agora fico grato pela ajuda.
-
Perfeito.. Agora porque ta pedindo o ID no banco de dados? Tipo, não era pra ele criar sozinho? que estou fazendo de errado?
-
Prezados, Poderia me ajudar a construir uma String que será enviada como parametro para um SqlCommand? O que esta Comentado é o qye achei no tutorial da internet. Mas no caso não entendi bem. Eu tenho apenas 2 textbox com nome de tbNome e tbTelefone e no meu banco de dados tenho os campos idAluno, Nome e telefone. Esse procedimento será executado ai clicar no botão enviar. minha idéia é inserir esses registros no banco. ´public void InsereRegistro() { try { string sSQL = ""; //sSQL = "sp_Campanha " + // " @Tipo =1," + // " @CampanhaTitulo = '" + _campanhatitulo.ToString() + "', " + // " @CampanhaDescricao = '" + _campanhadescricao.ToString() + "', " + // " @IDArquivo = '" + _upload.ToString() + "', " + // " @Destaque = '" + _destaque.ToString() + "', " + // " @CampanhaCanais = '" + _campanhacanais.ToString() + "', " + // " @CampanhaEmpresas = '" + _campanhaempresa.ToString() + "', " + // " @dtInicial = '" + _dtInicial.ToString() + "', " + // " @dtFinal = '" + _dtFinal.ToString() + "'"; clsConexao ObjConexao = new clsConexao(); ObjConexao.ExecuteCommand("conn", sSQL);
-
Como ler determinada parte de um .txt? (C)
pergunta respondeu ao Murilo Altheman de Paulo Jardim em C, C++
Já passei por um problema parecido Eu fiz um programa que a partir de uma esturtura armazenava os dados em um TXT e funcionava como um banco de dados.... Existe uma função no c que localiza a posição de do "dado no texto" depois de localizar você pode adita-lo. Segue um exemplo: case 8 : garotas = fopen("garotas.txt", "r+") // O arquivo tem de estar em modo de edição "r+" fscanf(garotas, "%s", &banco.status); // Escaneia o arquivo e armazena o dado em banco.status. fseek (garotas, 0, SEEK_CUR); // percorre o arquivo do 0 até a posição atual. tamfile=ftell (garotas); // armazena essa posição na variavel tamfile. //DEPOIS fseek ( garotas , tamfile-1 , SEEK_SET ); // Agora ele seta o cursor na posição tamfile -1 que é exatamente onta ta o status que quero alterar. fputs ( "A" , garotas ); // altero o status que antes de 'X' para 'A' Além disso a tem de ser declarado a várivavel: fpos_t position; essas funções fazem parte da <stdio.h> Caso tenha mais dúvidas procure referencias sobre essas funções acima. Espero ter ajudado. Paulo Jardim -
Devc++ com Struct e Armazenar Dados Em TXT
pergunta respondeu ao Paulo Jardim de Paulo Jardim em C, C++
Galera terminei o programa... Depois de 1.200 linhas de códico. Se alguém precisar do código fonte ou tirar dúvidas de como fazer pode me mandar e-mail: inf-paulo@bol.com.br -
Devc++ com Struct e Armazenar Dados Em TXT
pergunta respondeu ao Paulo Jardim de Paulo Jardim em C, C++
Bom galera o trabalho ficou quase perfeito, utilizei filtros e tudo mais... entretanto agora só tenho uma dúvida...como faço pra deletar apenas uma linha específica do txt? case 7 : garotas = fopen("garotas.txt", "rb"); // Listar Garotas system("color 5F"); n_garotas=0; system("cls"); printf("\n\t\t\tDigite o nome da Garota que deseja deletar\n\n\n"); fflush(stdin); gets(del); fseek (garotas , 0 , SEEK_END); tamfile = ftell (garotas); rewind (garotas); if (tamfile == 0) printf ("\n\n\t\tVc não tem contatos, favor cadastrar"); else while(!feof(garotas)) { fscanf(garotas, "%s", &banco.nome); for(i=0;banco.nome[i]!='';i++) if(banco.nome[i]=='_') banco.nome[i]=' '; fscanf(garotas, "%s", &banco.corcabelo); for(i=0; banco.corcabelo[i]!='';i++) if (banco.corcabelo[i]== '_') banco.corcabelo[i]=' '; fscanf(garotas, "%s", &banco.cor_olho); for(i=0; banco.cor_olho[i]!='';i++) if (banco.cor_olho[i]== '_') banco.cor_olho[i]=' '; fscanf(garotas, "%f", &banco.valor_hora); qtd_letras = strlen (del); for(qtd_letras+1; qtd_letras <= 30; qtd_letras++) del[qtd_letras] = ('_'); for(i=0; del[i]!= ''; i++) if (del[i] == '_') del[i] = ' '; if (strcmp (banco.nome, del) == 0 ) { printf("\n\n\nDeletando contato\n\n"); //aqui que o bixo pegou printf("%s | %s | %s | %.2f \n", banco.nome, banco.corcabelo, banco.cor_olho,banco.valor_hora); } } fclose(garotas); getch(); main(); break;