Desenvolvimento de Componentes e Acesso a dados com ADO.NET

Tamanho: px
Começar a partir da página:

Download "Desenvolvimento de Componentes e Acesso a dados com ADO.NET"

Transcrição

1 Desenvolvimento de Componentes e Acesso a dados com ADO.NET.NET Apprentice Maio de 2004 José António Tavares jrt@isep.ipp.pt 1

2 Requisitos Conhecimentos de Base de Dados (Relacionais) Programação: De preferência VB ou C/C++ ou C# ou Java Paradigma OOP Estar familiarizado com Microsoft SQL Server ou outras aplicações como o Microsoft Access Conhecer o ADO embora não seja fundamental Estar familiarizado com o desenvolvimento de aplicações para o ambiente Microsoft Windows 2

3 Agenda 1. Programação com ADO.NET 2. Componentes na Framework.NET 3. Exemplos de Aplicação: Componentes + ADO.NET 4. Instalação de componentes Deployment 3

4 PARTE I Programação com ADO.NET 4

5 Conteúdo 1. Desenho de aplicações centradas em dados 2. Arquitectura ADO.NET 3. Ligação a Base de Dados 4. Operações ligadas à Base de Dados 5. Construção de Data Sets 6. Ler e Escrever XML com ADO.NET 7. Construir Data Sets a partir de Bases de Dados 5

6 1. Desenho de aplicações centradas em dados 2. Arquitectura ADO.NET 3. Ligação a Base de Dados PARTE I Programação com ADO.NET 4. Operações ligadas à Base de Dados 5. Construção de Data Sets 6. Ler e Escrever XML com ADO.NET 7. Construir Data Sets a partir de Bases de Dados 6

7 Cenários Conectados Um cenário conectado é aquele no qual os utilizadores estão permanentemente ligados à bases de dados Vantagens: É mais fácil exercer segurança ao nível do ambiente A concorrência é mais fácil de controlar Os dados estão mais actualizados que nos outros cenários Desvantagens É necessário haver uma ligação constante ao servidor Escalabilidade 7

8 Cenários Desconectados Num ambiente desconectado, um sub-conjunto de dados pode ser copiado e modificado independentemente e mais tarde as alterações podem ser introduzidas de novo na base de dados Vantagens Pode-se trabalhar a qualquer altura e pode-se efectuar uma ligação à base de dados apenas quando necessário Outros utilizadores podem usar os recursos Este tipo de ambientes aumenta a escalabilidade e desempenho das aplicações Desvantagens Os dados nem sempre estão actualizados Podem ocorrer conflitos de dados que têm que ser resolvidos 8

9 O que é o ADO.NET? ADO.NET é a solução de acesso a dados em.net Faz parte integrante Framework.NET Substitui completamente o ADO clássico Constitui uma evolução ao clássico ADO Existem similaridades mas mudou muito Suporta os modelos conectados e desconectados DataReaders para acesso conectados a dados DataSets e DataAdapters para desconectados Baseado em pluggable Data Providers SQL Server, Oracle, OLE DB & ODBC standard 9

10 ADO.NET A nível do armazenamento de Dados, o ADO.NET suporta vários tipos: Não estruturados; Estruturados, não-hierárquicos Ficheiros CSV (Comma Separated Value), Folhas Microsoft Excel, Ficheiros Microsoft Exchange, Hierárquicos Documentos XML e outros Bases de Dados Relacionais SQL Server, Oracle, Access, ODBC, 10

11 Visão.net 11

12 ADO.NET e a Framework.NET VB C++ C# Perl Python Web Services ASP.NET User Interface ADO.NET: Data and XML.NET Framework Class Library Common Language Runtime Message Queuing COM+ (Transactions, Partitions, Object Pooling) IIS WMI Win32 12

13 Evolução do ADO para ADO.NET Connection XxxConnection XxxTransaction ADO Command XxxCommand DataSet ADO.NET Recordset XxxDataReader XxxDataAdapter 13

14 ADO vs. ADO.NET 1/2 ADO Desenhado para acessos conectados Amarrado ao modelo físico dos dados RecordSet é o contentor central de dados RecordSet é uma (1) tabela que contem todos os dados Obter dados de > 1 tabela requer um comando JOIN Os dados "são planos": perde relações e a navegação é sequencial Os tipos de dados estão limitados aos tipos de dados COM/COM+ A partilha de dados é via COM marshalling Problemas com marshalling através firewalls (DCOM, binários) 14

15 ADO vs. ADO.NET 2/2 ADO.NET Desenhado acessos desconectados Pode modelar dados logicamente (em memória)! DataSet substitui o RecordSet DataSet pode conter múltiplas tabelas Obter dados de > 1 tabela não requer um comando JOIN Relações são preservadas e a navegação é relacional Os tipos de dados estão apenas limitados por esquemas (schema) XML Não é necessário conversão de tipo de dados XML, tal como HTML, é texto: Firewall friendly 15

16 Beneficios do ADO.NET Interoperacionalidade através do uso de XML Standard aberto Texto legível e compreensível pelos humanos Dados descrevem-se a si mesmos (XML) Usado transferir todos os dados em ADO.NET Escalabilidade através de DataSet desconectados Conecções não são mantidas por longos periodos Database locking não existe Works the way the Web works: Hit and Run! Maintainability Separação entre o tratamento de dados e a user interface 16

17 1. Desenho de aplicações centradas em dados 2. Arquitectura ADO.NET 3. Ligação a Base de Dados PARTE I Programação com ADO.NET 4. Operações ligadas à Base de Dados 5. Construção de Data Sets 6. Ler e Escrever XML com ADO.NET 7. Construir Data Sets a partir de Bases de Dados 17

18 Arquitectura do ADO.NET Managed Provider Classes DataReader Database Connection Command DataAdapter Company: Northwind Traders DataTables DataSet 18

19 Usar as classes ADO.NET num cenário conectado SqlDataReader SqlCommand SqlConnection Num cenário conectado, os recursos são mantidos no servidor até a ligação ser fechada 1. Abrir ligação 2. Executar comando 3. Processar linhas no reader 4. Fechar reader 5. Fechar ligação SQL Server 7.0 (e posterior) 19

20 Usar as classes ADO.NET num cenário desconectado DataSet SqlDataAdapter SqlConnection SQL Server 7.0 (and later) Num cenário desconectado, os recursos não são mantidos no servidor durante o processamento dos dados 1. Abrir a ligação 2. Encher o DataSet 3. Fechar a ligação 4. Processar o DataSet 5. Abrir a ligação 6. Actualizar a fonte de dados 7. Fechar a ligação 20

21 Arquitectura do ADO.NET Esta animação descreve a arquitectura do ADO.NET considerando ambos os modelos: conectado e desconectado 21

22 ADO.NET e XML O ADO.NET é totalmente integrado com XML Cliente XML Web Services Data Source Request data XML DataSet SQL query Results 55 Updated XML DataSet 66 SQL updates Utilização do XML numa aplicação ADO.NET desconectada 22

23 1. Desenho de aplicações centradas em dados 2. Arquitectura ADO.NET 3. Ligação a Base de Dados PARTE I Programação com ADO.NET 4. Operações ligadas à Base de Dados 5. Construção de Data Sets 6. Ler e Escrever XML com ADO.NET 7. Construir Data Sets a partir de Bases de Dados 23

24 O que são.net Data Providers Definição Um.NET data provider é um conjunto de classes que pode ser usado para efectuar ligações a bases de dados, manipular e actualizar os dados Tipos de.net data providers SQL Server.NET Data Provider OLE DB.NET Data Provider ODBC.NET Data Provider Outros (DB2/400, MySQL, ) 24

25 Modelo de objectos do ADO.NET DataSet SQL Server.NET Data Provider OLE DB.NET Data Provider SQL Server 7.0 (e posterior) OLEDB sources (SQL Server 6.5) 25

26 Os Namespaces System.Data System.Data.Common System.Data.SqlClient System.Data.OleDb System.Data.SqlTypes System.Xml 26

27 Classes do.net Data Provider XxxConnection exemplo, SqlConnection XxxTransaction exemplo, SqlTransaction XxxException exemplo, SqlException XxxError exemplo, SqlError XxxCommand exemplo, SqlCommand XxxParameter exemplo, SqlParameter XxxDataReader exemplo, SqlDataReader XxxDataAdapter exemplo, SqlDataAdapter XxxPermission exemplo, SqlClientPermission 27

28 Gestão de conecções Abrir e fechar conexões explicitamente: Open Close Abrir e fechar ligações implicitamente: Os Data Adapters podem abrir e fechar as ligações automaticamente sempre que necessário O método Dispose: Remove a conexão da pool de conexões 28

29 OleDbConnection e SQLConnection Criação, abertura e fecho de uma conecção a uma fonte de dados Exemplo OleDbConnection : String constr="provider=microsoft.jet.oledb.4.0;" + "Data Source=NWIND_RW.MDB"; OleDbConnection aconn = new OleDbConnection(conStr); aconn.open(); // acesso, inserção e actualização de dados aconn.close(); 29

30 Pooling de Conecções A abordagem desconectada melhora significativamente a escalabilidade No entanto, requisitar frequentemente conecções degrada o desempenho das aplicações O pooling de conecções permite uma pool de conecções idênticas partilhadas por múltiplos utilizadores/aplicações Escalável e rápido Os maiores benefícios são para as aplicações Web / n-tier ADO.NET usa pooling por defeito 30

31 Pooling de Conecções com o SQL Server Esta animação descreve como é que o pooling de conecções funciona com o Microsoft SQL Server

32 1. Desenho de aplicações centradas em dados 2. Arquitectura ADO.NET 3. Ligação a Base de Dados PARTE I Programação com ADO.NET 4. Operações ligadas à Base de Dados 5. Construção de Data Sets 6. Ler e Escrever XML com ADO.NET 7. Construir Data Sets a partir de Bases de Dados 32

33 O objecto COMMAND O objecto command é uma referência a uma instrução de SQL ou Stored Procedure Propriedades (Name), Connection, CommandType, CommandText, Parameters Métodos ExecuteScalar, ExecuteReader, ExecuteNonQuery ExecuteXmlReader (só para o SqlCommand) 33

34 Retornar só um registo O ADO.NET é mais eficiente que o ADO clássico, dado que este retorna um RecordSet completo Exemplos de utilização: Obter as unidades em stock para um determinado produto Contar os produtos COUNT, MAX, MIN, AVERAGE Exemplo 34

35 Retornar múltiplos registos DataReader Read-only Forward-only O método ExecuteReader retorna um DataReader 35

36 Exemplo Data Reader Dim cmproducts As New SqlCommand( _ "SELECT ProductName, UnitsInStock " & _ "FROM Products", cnnorthwind) cnnorthwind.open() Dim rdrproducts As SqlDataReader rdrproducts = cmproducts.executereader() Do While rdrproducts.read() ListBox1.Items.Add(rdrProducts.GetString(0)) Loop rdrproducts.close() 36

37 Instruções de Inserção e Actualização de Dados Dim cmd As SqlCommand = New SqlCommand(_ "dbo.increaseproductprices", cnnorthwind) cmd.commandtype = CommandType.StoredProcedure cnnorthwind.open() Dim affected As Integer = cmd.executenonquery() cnnorthwind.close() MessageBox.Show( Registos Afectados: " & affected) 37

38 Transacções XxxConnection por exemplo, SqlConnection BeginTransaction XxxTransaction por exemplo, SqlTransaction Commit Rollback Exemplo 38

39 DEMO 01 Criar uma solução em Visual Studio.NET do tipo Database Criar uma pequena aplicação que ilustra o modelo conectado 39

40 1. Desenho de aplicações centradas em dados 2. Arquitectura ADO.NET 3. Ligação a Base de Dados PARTE I Programação com ADO.NET 4. Operações ligadas à Base de Dados 5. Construção de Data Sets 6. Ler e Escrever XML com ADO.NET 7. Construir Data Sets a partir de Bases de Dados 40

41 Como é constituído o DataSet DataSet DataTable DataTable Connection Stored Procedure DataColumn Database DataTable DataRelation Constraints DataRow 41

42 Modelo de Objectos do DataSet DataSet DataTableCollection DataTable DataColumnCollection DataColumn DataRowCollection DataRow ConstraintCollection Constraint DataRelationCollection DataRelation 42

43 DataSet, DataTable, DataColumn Criar um DataSet Arrastar o controlo DataSet da Toolbox Criar uma DataTable Editar a colecção de Tables de um DataSet usando a janela de propriedades Criar uma DataColumn e adicioná-la a uma DataTable Editar a colecção de Columns de uma DataTable usando a janela de propriedades 43

44 System.Data DataSet e DataTable Criar DataTable e adicionar a um DataSet DataSet ds = new DataSet(); // Create DataTable object: Customers. DataTable dt= new DataTable( Customers ); // Create and add columns to the table // 1. Explicitly create and Add a DataColumn DataColumn dc = new DataColumn( CustID, Int16 ); dt.columns.add( dc ); // 2. Implicitly Create and Add columns (DataColumn). dt.columns.add( First_Name, String ); dt.columns.add( Last_Name, String ); // Add the DataTable object to the DataSet ds.tables.add( dt ); 44

45 Restrição de Chave Primária Usar a propriedade PrimaryKey da DataTable Seleccionar as colunas pela ordem desejada Não permite mudar o nome à restrição Editar a colecção de Constraints da DataTable Adicionar uma UniqueConstraint Dar o nome à restrição Seleccionar as colunas Activar a caixa de chave primária 45

46 Expressões Customisadas As expressões Custom são colunas cujos valores são originados em cálculos e não em valores guardados Usar a propriedade Expression da DataColumn Sum([Unit Price] * [Quantity]) As funções de agregação podem usar relações pai/filho Avg, Count, Sum, Max, Min 46

47 DEMO 02 Um pequena aplicação que ilustra programaticamente, no modelo desconectado, a criação de DataSets 47

48 Inserir registos Criar uma linha nova DataRow drnovoempregado = dtempregados.newrow(); Preencher a nova linha drnovoempregado["empregadoid"] = 11; drnovoempregado["nome"] = "Nuno"; Adicionar a linha a uma DataTable dtempregados.rows.add(drnovoempregado); Criar, preencher e adicionar numa só instrução dtempregados.rows.add(new Object[]{11, "Nuno"}); 48

49 Modificar registos O método BeginEdit da classe DataRow Desliga o lançamento de eventos e excepções Os métodos EndEdit e CancelEdit da classe DataRow Ligam de novo o lançamento de eventos e excepções 49

50 Apagar registos O método Remove da classe DataRowCollection apaga completamente o registo da colecção dtempregados.rows.remove(drempregado); O método Delete da classe DataRow marca o registo como apagado. Este fica escondido, mas acessível, se necessário drempregado.delete(); 50

51 Alterações de dados no DataSet Uma DataRow pode guardar múltiplas versões de valores para cada coluna: DataRowVersion.Current O valor actual da coluna DataRowVersion.Original O valor da coluna antes de qualquer alteração ter ocorrido DataRowVersion.Proposed O valor da coluna durante o ciclo BeginEdit / EndEdit DataRowVersion.Default O valor por defeito em função do row s state 51

52 Processamento de Versões de linha datarow.beginedit(); datarow[ "au_lname" ] = "Brown"; CURRENT ORIGINAL PROPOSED White White N/A White White Brown datarow.endedit(); Brown White N/A datarow[ "au_lname", DataRowVersion.Current ] // Brown datarow[ "au_lname", DataRowVersion.Original ] // White 52

53 Processamento do Row State CURRENT ORIGINAL ROW STATE White White Unchanged dr["au_lname"] = "Brown"; Brown White Modified dr.acceptchanges(); Brown Brown Unchanged 53

54 Actualizações com o DataAdapter Actualizações são escritas na base de dados usando o método Update do DataAdapter DataAdapter analisa o Row State para cada linha Executa a acção apropriada (insert, update or delete) de acordo com o seu row state Usa os objectos Command atribuidos às suas propriedades InsertCommand, UpdateCommand e DeleteCommand DataRows in DataTable DataAdapter Action RowState = Unchanged RowState = Added RowState = Modified RowState = Deleted Ignore Use INSERT command Use UPDATE command Use DELETE command 54

55 Optimização de actualizações Objectos do tipo DataSet e DataTable suportam o método GetChanges GetChanges sem argumentos Extrai todas as linhas cujo RowState não é Unchanged dschanges = ds.getchanges(); GetChanges com argumento do tipo RowState Extrai apenas as linhas com um RowState especificado Permite controlar a ordem em que os inserts, updates e deletes são efectuados à base de dados changes = ds.getchanges( DataRowState.Added ); 55

56 Usar o método SELECT As DataTables têm um método de Select que permite filtrar as DataRows de modo a cumprir com restrições de ordenação e de estado Três parâmetros opcionais Expressões de filtragem, como por exemplo, "City= Porto'" Ordenar, por exemplo, "City ASC" DataViewRowState, por exemplo, Deleted 56

57 Criar um DataView Criar um DataView através da utilização dos controlos Criar um DataView programaticamente DataView dvprodutos = new DataView(dsNorthwind.Tables["Products"]); dvprodutos.sort = "UnitPrice"; dvprodutos.rowfilter = "CategoryID > 4"; grdproducts.datasource = dvprodutos; Aplicar um DataView a um DataTable dvprodutos.table = dsnorthwind.tables("products"); 57

58 Objectos DataView - Exemplo // Code for mytable Customers with // Name column not shown DataView view1 = new DataView( mytable ); DataView view2 = new DataView( mytable ); // Creates Ascending view of Customers by Name view1.sort = Name ASC ; // Set the view to show only modified (original) rows view2.rowstatefilter= DataViewRowState.ModifiedOriginal; // Bind to UI element(s)... DataGrid mygrid = new DataGrid(); mygrid.setdatabinding( view1, Customer ); //... 58

59 DEMO 03 Considerando a aplicação do DEMO 02 e programaticamente: Adicionar e actualizar registos Criar DataViews 59

60 1. Desenho de aplicações centradas em dados 2. Arquitectura ADO.NET 3. Ligação a Base de Dados PARTE I Programação com ADO.NET 4. Operações ligadas à Base de Dados 5. Construção de Data Sets 6. Ler e Escrever XML com ADO.NET 7. Construir Data Sets a partir de Bases de Dados 60

61 ADO.NET: Data e XML ADO.NET: Data and XML System.Data System.Xml OleDb SqlClient XSL Serialization Common SQLTypes XPath 61

62 XML e ADO.NET Método ReadXML dsnorthwind.readxml(@"c:\xml\teste.xml", XmlReadMode.InferSchema); Método WriteXML dsnorthwind.writexml(@"c:\xml\teste.xml", XmlWriteMode.WriteSchema); 62

63 DEMO 04 Utilização de XML Um pequena aplicação que ilustra a persistência de DataSets 63

64 1. Desenho de aplicações centradas em dados 2. Arquitectura ADO.NET 3. Ligação a Base de Dados PARTE I Programação com ADO.NET 4. Operações ligadas à Base de Dados 5. Construção de Data Sets 6. Ler e Escrever XML com ADO.NET 7. Construir Data Sets a partir de Bases de Dados 64

65 DataAdapter Pode-se preencher um DataSet através de um DataAdapter Invoca-se o método Fill do DataAdapter O método Fill executa o SelectCommand Preenche o DataSet com a estrutura e conteúdo do resultado do inquérito Para optimizar o desempenho adataset.enforceconstraints=false Chamar o método BeginLoadData do DataTable 65

66 DataAdapter - Exemplo // Visual C# DataSet dscustomers = new DataSet(); dscustomers.tables.add(new DataTable("Customers")); dscustomers.tables[0].beginloaddata(); dacustomers.fill(dscustomers, "Customers"); dscustomers.tables[0].endloaddata(); datagrid1.datasource = dscustomers.tables[0].defaultview; 66

67 Algumas operações do DataAdapter Deve-se usar o método Merge para juntar dois DataSets um original e um que contenha apenas as mudanças ao original O método de Update de um DataAdapter chama o comando apropriado para cada linha alterada (INSERT, UPDATE, DELETE) numa DataTable específica O método AcceptChanges de um DataSet efectua o Commit a todas as alterações efectuadas a um DataSet específico desde o seu último carregamento ou desde que foi chamado este método pela última vez 67

68 DEMO 05 Um pequena aplicação que mostra como criar e preencher DataSets a partir de fontes de dados e como persistir as alterações dos DataSets para fontes de dados BD em MS Access 68

69 Typed DataSets Visual Studio.NET pode gerar strongly typed DataSets Classes customisadas derivadas de DataSet Proporciona toda a funcionalidade dos DataSet Contem classes, métodos, eventos e propriedades especificas relacionadas com os dados em questão Por exemplo, um typed DataSet pode conter: Uma classe chamada Customers deriveda de DataTable Uma classe chamada CustomerRow deriveda de DataRow com propriedades CustomerID e Name 69

70 Typed DataSets - Vantagens Compile-time type checking Funcionalidades adicionais Por exemplo, o método FindByCustomerID Código mais legível e manutenção facilitada Total suporte pelo IntelliSense Torna o código mais legível e menos sujeito a erros string s = customerdataset.customers[ 1 ].Name; comparado com : string s = (string) customerdataset. Tables["Customers"]. Rows[ 1 ].Item[ "Name" ]; 70

71 Typed DataSets - Criar Visual Studio gera typed DataSets a partir definições XML schema (XSD) Visual Studio oferece varias formas de gerar definições XML schema A forma mais fácil é: Seleccionar o Add New Item wizard Seleccionar a template Data Set para adicionar um ficheiros XSD Arrastar uma table ou uma stored procedure do Server Explorer para a área de trabalho E é tudo! 71

72 DEMO 06 As mesma aplicação do DEMO 04, mas agora com Typed DataSets 72

73 PARTE II Componentes na Framework.NET 73

74 Criação Componente para a Framework.NET Pontos a considerar 1. Uso de Namespaces e declaração de classes 2. Implementação de classes 3. Implementação estruturada de gestão de excepções 4. Criação de propriedades 5. Compilação de componentes 74

75 Criação Componente para a Framework.NET Componente simples que contem apenas um método que valida utilizadores. O utilizador e a respectiva palavra chave estão numa tabela da Base de Dados. Exemplo de demonstração no Visual Studio 75

76 Criar uma Simples Aplicação Cliente Pontos a considerar 1. Uso das Libraries 2. Instanciação dos Componentes 3. Chamar os Componentes 4. Contruir a aplicação Cliente 76

77 Criar uma Simples Aplicação Cliente para a Consola Exemplo de demonstração no Visual Studio 77

78 Criar uma Simples Aplicação Cliente do tipo Windows Forms Exemplo de demonstração no Visual Studio 78

79 PARTE III Exemplos de Aplicação: Componentes + ADO.NET 79

80 Loja de Informática Componente simples que implementa as regras de negócio de uma loja de equipamentos e artigos de informática. 80

81 Loja de Informática Desenvolvimento em duas camadas Apresentação Interface com utilizador Aplicação local Acesso via Web Outras Regras de Negócio - Componente 81

82 Loja de Informática Funcionalidades do componente: Validação de utilizador/ password ; Inserir / actualizar clientes; Verificar se um determinado cliente / produto existe; Actualizar a quantidade de produtos quando é feita uma venda; Inserir vendas (transacções) com validação da existência dos produtos em stock. 82

83 Loja de Informática Exemplo de demonstração no Visual Studio 83

84 PetShop - Microsoft Microsoft.NET Pet Shop 84

85 PetShop - Microsoft.NET Pet Shop high-level logical architecture 85

86 PetShop - Microsoft.NET Pet Shop 2.0 Architecture 86

87 PetShop - Microsoft.NET Pet Shop 3.0 Architecture 87

88 PARTE IV Instalação de componentes Deployment 88

89 Instalação de componentes Deployment 1. Conceitos Comuns 2. Aplicações Simples 3. Aplicações Baseadas em Componentes 4. Configuração e Distribuição 89

90 Conceitos Comuns Classes and Types Used in.net Framework Applications Are: Organized in a hierarchy of namespaces Stored in PE files, such as DLLs and EXEs Fully described by metadata Assemblies: Are made up of one or more PE files Contain a manifest that identifies the assembly and its files Specify exported and imported classes and types Are units of deployment, reuse, and versioning 90

91 Aplicações Simples Require.NET Runtime Be Installed on Local Computer Can Be Run Directly from a File Server or Copied Locally Make No Registry Entries Cannot Break Another Application Eliminate DLL Hell Can Be Uninstalled by Deleting Locally Copied File(s) 91

92 Aplicações baseadas em componentes Assemblies Private to an Application Same as a simple application Assemblies Private to Related Applications Deployed into a common subdirectory Assemblies Shared with Other Unrelated Applications Require a strong name and version information Deployed into the global assembly cache 92

93 Configuração e Distribuição Configuration Maintained in plain-text files Deployment Common distribution formats, such as a.cab file or a.msi file Common distribution mechanisms, such as Windows 2000 IntelliMirror or Microsoft Systems Management Server 93

94 Cenários de Instalação A Simple Application A Componentized Application Specifying a Path for Private Assemblies A Strong-Named Assembly Deploying Shared Components A Versioned Assembly Creating Multiple Versions of a Strong-Named Assembly Binding Policy Deploying Multiple Versions of a Strong-Named Assembly 94

95 A Simple Application Use the Microsoft Intermediate Language Disassembler (Ildasm.exe) to Examine the Assembly Manifest Version information Imported types Exported types Deploy the Application by: Running the executable file directly from a file server, or Installing it locally by copying the file Uninstall the application by deleting the file 95

96 Componentized Application Assembly Component to Be Used by Application Assembly Stringer.dll is built from Stringer.cs as follows: csc csc /target:library Stringer.cs Client Needs to Reference Assembly csc csc /reference:stringer.dll Client.cs Deployment by File Server or Local Copy 96

97 Specifying a Path for Private Assemblies Specifying a Directory From Which to Load Private Assemblies. Client.exe.config file specifies a privatepath tag <configuration> <configuration> <runtime> <runtime> <assemblybinding <assemblybinding xmlns="urn:schemas-microsoft-com:asm.v1"> <probing <probing privatepath= MyStringer"/> </assemblybinding> </runtime> </runtime> </configuration> </configuration> Configuration File s XML Tags Are Case-Sensitive 97

98 Strong-Named Assembly Global Assembly Cache Contains assemblies shared by unrelated applications Strong Names Are Required for Assemblies in the Cache Generate a public-private key pair: sn sn k k orgkey.snk Add code to source file to specify version and key information: #if #if STRONG STRONG [assembly: [assembly: System.Reflection.AssemblyVersion(" ")] [assembly: [assembly: System.Reflection.AssemblyKeyFile("orgKey.snk")] #endif #endif Compile: csc csc /define:strong /define:strong /target:library /target:library /out:areverser.dll AReverser.cs AReverser.cs 98

99 Deploying Shared Components Installing the Strong-Named Component in the Global Assembly Cache gacutil /i /i AReverser.dll Examining the Global Assembly Cache gacutil /l /l Removing a Shared Component File gacutil /u /u AReverser 99

100 A Versioned Assembly Applications Need to Bind to a Suitable Version of a Shared Assembly The Version Number Is Represented by a 4-Part Number <major version>.<minor version>.<revision>.<build number> Applications Get the Versions of Assemblies with Which They Were Built and Tested Unless overridden by explicit policy rules 100

101 Creating Multiple Versions of a Strong-Named Assembly Building Two New Versions of AReverser with a New Key Pair Specify version for one and for the other For AReverser_v \AReverser.cs: Build #if #if STRONG STRONG [assembly: [assembly: System.Reflection.AssemblyVersion(" ")] System.Reflection.AssemblyVersion(" ")] [assembly: [assembly: System.Reflection.AssemblyKeyFile("orgVerKey.snk")] System.Reflection.AssemblyKeyFile("orgVerKey.snk")] #endif #endif csc csc /define:strong /define:strong /target:library /target:library /out:areverser_v \areverser.dll /out:areverser_v \areverser.dll AReverser_v \AReverser.cs AReverser_v \AReverser.cs Use Ildasm.exe to Examine Different Versions Note the publickey and version numbers.assembly.assembly AReverser AReverser { { publickey.publickey = = (00 ( B1 B1 F2 F2 A0 A0 ) ).hash.hash algorithm algorithm 0x x ver.ver 2:0:1:0 2:0:1:0 101

102 Binding Policy Policy Resolution Allows an assembly reference, specified at compile time, to be modified after the application has been deployed without recompiling Happens in the Following Stages: 1. Application-policy resolution 2. Publisher-policy resolution 3. Administrator-policy resolution In Each Stage, an XML Configuration File Is Read Note: XML is case-sensitive Version Numbers of Assemblies That Are Not Strong-Named Are Not Checked Configuration File Tag Examples privatepath bindingredirect 102

103 Deploying Multiple Versions of a Strong-Named Assembly Install Both Versions of AReverser.dll into the Global Assembly Cache gacutil /i /i AReverser_v \AReverser.dll gacutil /i /i AReverser_v \AReverser.dll Compile the VerClient Executable and Specify Version of the AReverser Component csc csc /reference:mystringer\stringer.dll /reference:areverser_v \areverser.dll VerClient.cs Use Version Policies to Control Assembly Binding at Run Time 103

104 Packaging and Deployment Tools Assembly Linker (Al.exe) Global Assembly Cache tool (Gacutil.exe) MSIL Disassembler (Ildasm.exe) Strong Name (Sn.exe) Native Image Generator (Ngen.exe) Assembly Binding Log Viewer (Fuslogvw.exe).NET Framework Configuration Tool (Mscorcfg.msc) Code Access Security Policy Tool (Caspol.exe) 104

105 Perguntas & Respostas 105

106 Mais Informação... MSDN Library framework center C# ASP.net Laboratório.net do ISEP/IPP 106

107 Desenvolvimento de Componentes e Acesso a dados com ADO.NET.NET Apprentice Maio de 2004 José António Tavares jrt@isep.ipp.pt 107

Ambientes de Desenvolvimento Avançados Aula Teórico-Prática Programação com ADO.NET

Ambientes de Desenvolvimento Avançados   Aula Teórico-Prática Programação com ADO.NET Ambientes de Desenvolvimento Avançados http://www.dei.isep.ipp.pt/~jtavares/adav Aula Teórico-Prática Engenharia Informática 2005/2006 José António Tavares jrt@isep.ipp.pt Programação com ADO.NET 2 1 Conteúdo

Leia mais

Departamento de Engenharia Informática Instituto Superior de Engenharia do Porto Instituto Politécnico do Porto ADO.NET.

Departamento de Engenharia Informática Instituto Superior de Engenharia do Porto Instituto Politécnico do Porto ADO.NET. Departamento de Engenharia Informática Instituto Superior de Engenharia do Porto Instituto Politécnico do Porto ADO.NET Nuno Ferreira Outubro de 2004 2004 Nuno Ferreira Departamento de Engenharia Informática

Leia mais

INTRODUÇÃO AO MODELO ADO.NET (DESCONECTADO)

INTRODUÇÃO AO MODELO ADO.NET (DESCONECTADO) INTRODUÇÃO AO MODELO ADONET (DESCONECTADO) O modelo ADONET (Activex Data Objects NET) consiste num conjunto de classes definidas pela NET framework (localizadas no namespace SystemData) que pode ser utilizado

Leia mais

Acesso a Banco de Dados usando C#

Acesso a Banco de Dados usando C# Linguagem de Programação 3 Acesso a Banco de Dados usando C# Prof. Mauro Lopes 1-31 26 Objetivos Nesta aula iremos dar continuidade aos elementos de programação da Linguagem C#. Iremos aqui apresentar

Leia mais

ADO.NET - Roteiro básico e Boas Práticas

ADO.NET - Roteiro básico e Boas Práticas ADO.NET - Roteiro básico e Boas Práticas Confuso com tantos conceitos novos, com tantas siglas e acrósticos? Qual provedor usar? Devo usar DataSet ou DataReader? Se essas e outras dúvidas te atormentam,

Leia mais

Iniciar o Data Adapter Configuration Wizard. Toolbox Data Duplo clique em OleDbDataAdapter. Botão next na caixa de diálogo

Iniciar o Data Adapter Configuration Wizard. Toolbox Data Duplo clique em OleDbDataAdapter. Botão next na caixa de diálogo Iniciar o Data Adapter Configuration Wizard Toolbox Data Duplo clique em OleDbDataAdapter Botão next na caixa de diálogo Se carregar em Cancel, o wizard é cancelado e podemos depois definir as propriedades

Leia mais

A interface do Microsoft Visual Studio 2005

A interface do Microsoft Visual Studio 2005 Tarefa Orientada 1 A interface do Microsoft Visual Studio 2005 Objectivos: Introdução à framework.net Iniciar o Visual Studio 2005. Criar um novo projecto de Windows Forms em Visual Basic Introdução à

Leia mais

Integração de Aplicações e Sistemas Abordagem Táctica da Integração

Integração de Aplicações e Sistemas Abordagem Táctica da Integração Integração de Aplicações e Sistemas Abordagem Táctica da Integração Enterprise Application Integration Tecnologias de Integração de Aplicações Transferência de Ficheiros Captura da Interface Utilizador

Leia mais

Agenda. Acesso a Dados (ADO.NET) www.link.pt. Março 2005 Engenharia Software 2005 2004 Link Consulting

Agenda. Acesso a Dados (ADO.NET) www.link.pt. Março 2005 Engenharia Software 2005 2004 Link Consulting Acesso a Dados (ADO.NET) 1 Março 2005 Engenharia Software 2005 2004 Link Consulting Agenda Introdução Evolução Arquitectura Data Providers Connections e Commands DataReaders DataSets e DataAdapters Databinding

Leia mais

Tarefa Orientada 2 Aplic. Manutenção de Produtos - DataGridView

Tarefa Orientada 2 Aplic. Manutenção de Produtos - DataGridView Tarefa Orientada 2 Aplic. Manutenção de Produtos - DataGridView Objectivos: Criação de fonte de dados (Data Source) a partir de base de dados. Utilização de um controlo DataGridView para visualizar dados.

Leia mais

Acessando Dados com ADO.NET

Acessando Dados com ADO.NET Acessando Dados com ADO.NET O queéado.net? XML restrito ADO Desenhado para ambientes conectados (cliente-servidor, por exemplo) COM Usa o OLE DB para acessar os dados Suporte avançado a XML ADO.NET Desenhado

Leia mais

Visual Basic.NET ADO.NET. Professor: Danilo Giacobo. Página pessoal:

Visual Basic.NET ADO.NET. Professor: Danilo Giacobo. Página pessoal: Visual Basic.NET ADO.NET Professor: Danilo Giacobo Página pessoal: www.danilogiacobo.eti.br E-mail: danilogiacobo@gmail.com 1 Objetivos da aula Introdução A biblioteca de classes do ADO.NET Principais

Leia mais

Acesso a Banco de Dados usando C# (MySql Provider)

Acesso a Banco de Dados usando C# (MySql Provider) Ambiente de Programação Visual Acesso a Banco de Dados usando C# (MySql Provider) Prof. Mauro Lopes 1-31 22 Objetivos Nesta aula iremos apresentar o ADO.NET. Esta importante parte da tecnologia.net permite

Leia mais

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF)

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) Sessão Prática II JPA entities e unidades de persistência 1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) a) Criar um Web Application (JPAsecond) como anteriormente:

Leia mais

Computação Móvel 2007/2008

Computação Móvel 2007/2008 Computação Móvel 2007/2008 Tutorial 2 Criação de uma nova publicação de base de dados no SQL Server 2005 Standard Edition / Enterprise Edition / Developer Edition No computador cliente: 1. Estabelecer

Leia mais

Ficha prática nº 7. SGBD Microsoft Access e SQL Server

Ficha prática nº 7. SGBD Microsoft Access e SQL Server Instituto Superior Politécnico de Viseu Escola Superior de Tecnologia Departamento de Informática Ficha prática nº 7 SGBD Microsoft Access e SQL Server Objectivo: Criação de uma aplicação em arquitectura

Leia mais

Criar uma aplicação JPA2 com EclipseLink e H2

Criar uma aplicação JPA2 com EclipseLink e H2 Criar uma aplicação JPA2 com EclipseLink e H2 1) Criar uma aplicação Java no NetBeans. File > New Project > Java, Java Application > Project name: JPA2 Finish. 2) Acrescentar ao Projeto NetBeans a biblioteca

Leia mais

using System; using System.Collections.Generic; using System.Text; namespace Estudo { public class PessoaJuridica : Pessoa { private string cnpj;

using System; using System.Collections.Generic; using System.Text; namespace Estudo { public class PessoaJuridica : Pessoa { private string cnpj; using System; using System.Collections.Generic; using System.Text; namespace Estudo public abstract class Pessoa private int idpessoa; private string nome; public int IdPessoa get return this.idpessoa;

Leia mais

Comandos de Manipulação

Comandos de Manipulação SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL

Leia mais

Sistemas Empresariais Integrados

Sistemas Empresariais Integrados Departamento de Engenharia Informática 2010/2011 Sistemas Empresariais Integrados Tutorial do Adaptador SQL 2º semestre Considere uma base de dados com uma tabela account que guarda o número de conta,

Leia mais

Framework.NET, Microsoft Visual C# 2010 Express e Elementos da Linguagem C#

Framework.NET, Microsoft Visual C# 2010 Express e Elementos da Linguagem C# Linguagem de Programação 3 Framework.NET, Microsoft Visual C# 2010 Express e Elementos da Linguagem C# Prof. Mauro Lopes 1-31 35 Objetivos Nesta aula iremos apresentar a tecnologia.net, o ambiente de desenvolvimento

Leia mais

P S I 2. º A N O F 5 M E S T R E / D E T A L H E E P E S Q U I S A. Criar uma relação mestre-detalhe. Pesquisa de informação

P S I 2. º A N O F 5 M E S T R E / D E T A L H E E P E S Q U I S A. Criar uma relação mestre-detalhe. Pesquisa de informação P S I 2. º A N O F 5 M E S T R E / D E T A L H E E P E S Q U I S A Módulo 18 Ferramentas de Desenvolvimento de Páginas Web Criar uma relação mestre-detalhe 1. Cria uma cópia da página «listaferram.php»

Leia mais

Aplicação ReadWriteData

Aplicação ReadWriteData Aplicação ReadWriteData Aplicação com 1 página, que mostra num controlo DataGrid uma tabela de uma base de dados. O controlo DataGrid permite editar os valores mostrados nas células, e efectuar as correspondentes

Leia mais

Bases de Dados 2007/2008. Aula 9

Bases de Dados 2007/2008. Aula 9 Bases de Dados 2007/2008 Aula 9 1. T-SQL TRY CATCH 2. TRATAMENTO ERROS RAISERROR 3. TRIGGERS 4. EXERCÍCIOS Sumário Referências http://msdn2.microsoft.com/en-us/library/ms189826.aspx (linguagem t-sql) http://www.di.ubi.pt/~pprata/bd/bd0405-proc.sql

Leia mais

Tarefa Orientada 5 Aplic. Manutenção de Facturas de Clientes

Tarefa Orientada 5 Aplic. Manutenção de Facturas de Clientes Tarefa Orientada 5 Aplic. Manutenção de Facturas de Clientes Objectivos: Aplicação Manutenção de Facturas de Clientes Utilização de uma fonte de dados. Formulários Master/Detail. Adicionar consultas a

Leia mais

Tarefa Orientada 19 Triggers

Tarefa Orientada 19 Triggers Tarefa Orientada 19 Triggers Objectivos: Criar triggers AFTER Criar triggers INSTEAD OF Exemplos de utilização Os triggers são um tipo especial de procedimento que são invocados, ou activados, de forma

Leia mais

DSS 08/09. Camada de Dados - JDBC. Aula 1. António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,jfc}@di.uminho.

DSS 08/09. Camada de Dados - JDBC. Aula 1. António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,jfc}@di.uminho. Universidade do Minho Departamento de Informática Camada de Dados - JDBC Aula 1 António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,jfc}@di.uminho.pt 2 Camada de Dados A camada

Leia mais

Bases de Dados 2007/2008. Aula 1. Referências

Bases de Dados 2007/2008. Aula 1. Referências Bases de Dados 2007/2008 Aula 1 Sumário 1. SQL Server 2000: configuração do acesso ao servidor. 1.1. SQL Server Service Manager. 1.2. SQL Server Enterprise Manager. 1.3. SQL Query Analyzer. 2. A base de

Leia mais

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL 1. O que é Linguagem SQL 2. Instrução CREATE 3. CONSTRAINT 4. ALTER TABLE 5. RENAME TABLE 6. TRUCANTE TABLE 7. DROP TABLE 8. DROP DATABASE 1 1. O que é Linguagem SQL 2. O SQL (Structured Query Language)

Leia mais

Persistência de Classes em Tabelas de Banco de Dados

Persistência de Classes em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos

Leia mais

DESENVOLVENDO SOLUÇÕES COM VISUAL FOXPRO 8 E 9

DESENVOLVENDO SOLUÇÕES COM VISUAL FOXPRO 8 E 9 DESENVOLVENDO SOLUÇÕES COM VISUAL FOXPRO 8 E 9 Í N D I C E Capítulo 1 - O Início de Tudo 1 Reunindo todas as informações necessárias 2 Instalando o Visual FoxPro 2 Configurando o Visual FoxPro 7 Capítulo

Leia mais

Introdução ao ASP.NET

Introdução ao ASP.NET Introdução ao ASP.NET Miguel Isidoro Agenda ASP ASP.NET Server Controls Separação de Código e Apresentação Acesso a Dados Web Services Aplicações Web ASP.NET 1 ASP Razões do Sucesso Modelo de programação

Leia mais

DSS 09/10. DSS 09/10 Que métodos é que fazem parte de cada camada? Aplicações Multi-camada JDBC. Aula 3 DSS 09/10

DSS 09/10. DSS 09/10 Que métodos é que fazem parte de cada camada? Aplicações Multi-camada JDBC. Aula 3 DSS 09/10 Universidade do Minho Departamento de Informática Aplicações Multi-camada JDBC Aula 3 António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,jose.campos@di.uminho.pt 2 Programação

Leia mais

Programação SQL. Introdução

Programação SQL. Introdução Introdução Principais estruturas duma Base de Dados: Uma BD relacional é constituída por diversas estruturas (ou objectos ) de informação. Podemos destacar: Database: designa a própria BD; Table/Tabela:

Leia mais

Universidade da Beira Interior. Sistemas Distribuídos - 2014/2015 Curso: Engª Informática. Folha 11. JAX-RS: Java API for RESTful Web Services

Universidade da Beira Interior. Sistemas Distribuídos - 2014/2015 Curso: Engª Informática. Folha 11. JAX-RS: Java API for RESTful Web Services JAX-RS: Java API for RESTful Web Services A - Creating RESTful Web Services from a Database 1- Comece por criar um projeto do tipo Java Web application, como fez nos exercícios das fichas anteriores. No

Leia mais

Reconhecer alguns dos objectos VBA Automatizar bases de dados recorrendo à programação VBA e scripts SQL

Reconhecer alguns dos objectos VBA Automatizar bases de dados recorrendo à programação VBA e scripts SQL OBJECTIVOS Reconhecer alguns dos objectos VBA Automatizar bases de dados recorrendo à programação VBA e scripts SQL O objecto DOCMD Este objecto permite o acesso a todas as operações sobre todos os objectos

Leia mais

Com criar relatório no Report Services do Microsoft SQL Server 2008 R2 integrado com o

Com criar relatório no Report Services do Microsoft SQL Server 2008 R2 integrado com o Com criar relatório no Report Services do Microsoft SQL Server 2008 R2 integrado com o SisMoura Objetivo Configurar o Reporting Services Como criar relatórios Como publicar relatórios Como acessar os relatórios

Leia mais

Laboratório 1 SQL Server Integration Services

Laboratório 1 SQL Server Integration Services Laboratório 1 SQL Server Integration Services Cenário: Você deseja construir um processo que irá realizar relatório sobre vendas. O relatório é um sumario das vendas anuais, mas poderia ser aplicado para

Leia mais

Banco de Dados. Maurício Edgar Stivanello

Banco de Dados. Maurício Edgar Stivanello Banco de Dados Maurício Edgar Stivanello Agenda Conceitos Básicos SGBD Projeto de Banco de Dados SQL Ferramentas Exemplo Dado e Informação Dado Fato do mundo real que está registrado e possui um significado

Leia mais

Os dados no MySQL são armazenado em tabelas. Uma tabela é uma colecção de informação relacionada e consiste em colunas e linhas.

Os dados no MySQL são armazenado em tabelas. Uma tabela é uma colecção de informação relacionada e consiste em colunas e linhas. MySQL 101 Recapitulando Os dados no MySQL são armazenado em tabelas. Uma tabela é uma colecção de informação relacionada e consiste em colunas e linhas. As bases de dados são úteis quando necessitamos

Leia mais

Construindo Aplicações com ASP.NET MVC 2.0 Aula 03 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas

Construindo Aplicações com ASP.NET MVC 2.0 Aula 03 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas Construindo Aplicações com ASP.NET MVC 2.0 Aula 03 Luiz Alberto Ferreira Gomes Ciência da Computação da PUC Minas 2 Camada responsável por armazenar em um repositório de dados e reconstituir objetos de

Leia mais

Tarefa Orientada 16 Vistas

Tarefa Orientada 16 Vistas Tarefa Orientada 16 Vistas Objectivos: Vistas só de leitura Vistas de manipulação de dados Uma vista consiste numa instrução de SELECT que é armazenada como um objecto na base de dados. Deste modo, um

Leia mais

Bases de Dados. Lab 1: Introdução ao ambiente

Bases de Dados. Lab 1: Introdução ao ambiente Departamento de Engenharia Informática 2010/2011 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

trigger insert, delete, update

trigger insert, delete, update 1 Um trigger é um conjunto de instruções SQL armazenadas no catalogo da BD Pertence a um grupo de stored programs do MySQL Executado quando um evento associado com uma tabela acontece: insert, delete,

Leia mais

PADI 2015/16. Aula 1 Introdução à Plataforma.NET

PADI 2015/16. Aula 1 Introdução à Plataforma.NET PADI 2015/16 Aula 1 Introdução à Plataforma.NET 1 Sumário 1. Framework.NET Arquitectura 2. Linguagem C# 2.0 Sintaxe C# vs. Java vs. C++ 3. IDE: MS Visual Studio 2005 ou superior Ferramentas Console/Win

Leia mais

Microsoft Visual Studio 2010 C# Volume II

Microsoft Visual Studio 2010 C# Volume II Microsoft Visual Studio 2010 C# Volume II Apostila desenvolvida pelos Professores Ricardo Santos de Jesus e Rovilson de Freitas, para as Disciplinas de Desenvolvimento de Software I e II, nas Etecs de

Leia mais

SQL Structured Query Language

SQL Structured Query Language Janai Maciel SQL Structured Query Language (Banco de Dados) Conceitos de Linguagens de Programação 2013.2 Structured Query Language ( Linguagem de Consulta Estruturada ) Conceito: É a linguagem de pesquisa

Leia mais

Fundament n os s da platafo f rm r a. NE N T André Menegassi

Fundament n os s da platafo f rm r a. NE N T André Menegassi Fundamentos da plataforma.net André Menegassi O que é o.net Framework?.NET é uma plataforma de software para desenvolvimento de aplicações que conecta informações, sistemas, pessoas e dispositivos através

Leia mais

BD SQL Server. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04

BD SQL Server. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04 BD SQL Server SGBD SQL Server Licenciatura em Engenharia Informática e Computação Bases de Dados 2003/04 BD SQL Server Criação da Ligação ao SGBD Entrar no Microsoft SQL Server / Enterprise Manager Criar

Leia mais

EXEMPLOS DE COMANDOS NO SQL SERVER

EXEMPLOS DE COMANDOS NO SQL SERVER EXEMPLOS DE COMANDOS NO SQL SERVER Gerenciando Tabelas: DDL - DATA DEFINITION LANGUAG Criando uma tabela: CREATE TABLE CLIENTES ID VARCHAR4 NOT NULL, NOME VARCHAR30 NOT NULL, PAGAMENTO DECIMAL4,2 NOT NULL;

Leia mais

ASP.NET 2.0 - Gerando relatórios com o ReportViewer

ASP.NET 2.0 - Gerando relatórios com o ReportViewer 1 de 5 26/8/2010 18:07 ASP.NET 2.0 - Gerando relatórios com o ReportViewer Este artigo vai mostrar como você pode gerar relatórios em suas páginas ASP.NET 2.0 usando o add-in ReportViewer para o Visual

Leia mais

Redes de Computadores. Trabalho de Laboratório Nº8

Redes de Computadores. Trabalho de Laboratório Nº8 Redes de Computadores Curso de Eng. Informática Curso de Eng. de Electrónica e Computadores Trabalho de Laboratório Nº8 Configuração e utilização do FTP 2004/2005 1 Objectivo Configuração de um servidor

Leia mais

Consistem num conjunto de apontadores para instâncias especificas de cada relação.

Consistem num conjunto de apontadores para instâncias especificas de cada relação. Mecanismo usado para mais fácil e rapidamente aceder à informação existente numa base de dados. Bases de Dados de elevadas dimensões. Consistem num conjunto de apontadores para instâncias especificas de

Leia mais

Bases de Dados. O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo ilustrada na figura 1.

Bases de Dados. O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo ilustrada na figura 1. Departamento de Engenharia Informática 2008/2009 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

Manual de Administração Intranet BNI

Manual de Administração Intranet BNI Manual de Administração Intranet BNI Fevereiro - 2010 Índice 1. Apresentação... 3 2. Conceitos... 5 3. Funcionamento base da intranet... 7 3.1. Autenticação...8 3.2. Entrada na intranet...8 3.3. O ecrã

Leia mais

COMPETÊNCIAS ESPECÍFICAS Compreender e utilizar a linguagem SQL, na construção e manutenção de uma base de dados.

COMPETÊNCIAS ESPECÍFICAS Compreender e utilizar a linguagem SQL, na construção e manutenção de uma base de dados. PLANIFICAÇÃO DA DISCIPLINA DE SISTEMAS DE INFORMAÇÃO 12.ºH CURSO PROFISSIONAL DE TÉCNICO MULTIMÉDIA ANO LECTIVO 2013/2014 6. LINGUAGENS DE PROGRAMAÇÃO IV Pré-requisitos: - Planificar e estruturar bases

Leia mais

Como acompanhar a evolução dos aplicativos? Console >> Desktop >> Web >> Mobile >> Cloud. Como aproveitar o melhor de cada programador?

Como acompanhar a evolução dos aplicativos? Console >> Desktop >> Web >> Mobile >> Cloud. Como aproveitar o melhor de cada programador? Como acompanhar a evolução dos aplicativos? Console >> Desktop >> Web >> Mobile >> Cloud Como aproveitar o melhor de cada programador? Clientes querem tudo pra ontem. Como atender essa necessidade? Microsoft.NET

Leia mais

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Introdução à Banco de Dados. Nathalia Sautchuk Patrício Introdução à Banco de Dados Nathalia Sautchuk Patrício Histórico Início da computação: dados guardados em arquivos de texto Problemas nesse modelo: redundância não-controlada de dados aplicações devem

Leia mais

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Trabalhando com conexão ao banco de dados MySQL no Lazarus Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 4 O Componente Trabalhando com conexão ao banco de dados MySQL no Lazarus Ano: 03/2011

Leia mais

Microsoft Access 2010. Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento

Microsoft Access 2010. Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento Microsoft Access 2010 Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento 1 Principais objetos do Access Tabelas Guardam a informação da BD (Base de Dados)

Leia mais

Catálogo Nacional de Compras Públicas. Manual de Fornecedores

Catálogo Nacional de Compras Públicas. Manual de Fornecedores 10 de Julho de 2009 Índice 1. Introdução... 3 1.1. Objectivo... 3 2. Fornecedor... 4 2.1. AQs/CPAs... 4 2.2. Contratos... 4 2.3. Grupos AQ/CPA... 5 3. Carregamento e Actualização do Catálogo... 7 3.1.

Leia mais

MANUAL DE CONFIGURAÇÃO -ZIMBRA- Ajuda na configuração e utilização do cliente de correio eletrónico

MANUAL DE CONFIGURAÇÃO -ZIMBRA- Ajuda na configuração e utilização do cliente de correio eletrónico MANUAL DE CONFIGURAÇÃO -ZIMBRA- Ajuda na configuração e utilização do cliente de correio eletrónico Índice Autenticação Pela Primeira Vez... 3 Utilização do Zimbra... 4 Como Aceder... 4 Como fazer Download

Leia mais

Microsoft.NET. Desenvolvimento Baseado em Componentes

Microsoft.NET. Desenvolvimento Baseado em Componentes Microsoft.NET Lirisnei Gomes de Sousa lirisnei@hotmail.com Jair C Leite jair@dimap.ufrn.br Desenvolvimento Baseado em Componentes Resolução de problemas específicos, mas que podem ser re-utilizados em

Leia mais

MANUAL DO EXCEL. Um campo é um espaço que contém determinada informação (ex: Nome do cliente X, Telefone do Sr. Y)

MANUAL DO EXCEL. Um campo é um espaço que contém determinada informação (ex: Nome do cliente X, Telefone do Sr. Y) MANUAL DO EXCEL BASE DE DADOS DEFINIÇÃO DE BASES DE DADOS Uma base de dados é um conjunto de informações, organizada segundo regras definidas à qual se pode aceder para extrair, actualizar, acrescentar

Leia mais

Prof. Carlos Majer Aplicações Corporativas UNICID

Prof. Carlos Majer Aplicações Corporativas UNICID Este material pertence a Carlos A. Majer, Professor da Unidade Curricular: Aplicações Corporativas da Universidade Cidade de São Paulo UNICID Licença de Uso Este trabalho está licenciado sob uma Licença

Leia mais

Banco de Dados. Prof. Antonio

Banco de Dados. Prof. Antonio Banco de Dados Prof. Antonio SQL - Structured Query Language O que é SQL? A linguagem SQL (Structure query Language - Linguagem de Consulta Estruturada) é a linguagem padrão ANSI (American National Standards

Leia mais

Manual de Instruções para a Criação de Ficheiros CSR. Microsoft IIS 5/6

Manual de Instruções para a Criação de Ficheiros CSR. Microsoft IIS 5/6 Manual de Instruções para a Criação de Ficheiros CSR Página 1 de 8 CONTROLO DOCUMENTAL REGISTO DE MODIFICAÇÕES Versão Data Motivo da Modificação PREPARADO REVISTO APROVADO ACEITE DUS/RS DISTRIBUIÇÃO DO

Leia mais

Solutions for Information Technologies. BIS-Navegador. Manual de Instalação para Microsoft SQL Server

Solutions for Information Technologies. BIS-Navegador. Manual de Instalação para Microsoft SQL Server Solutions for Information Technologies BIS-Navegador Manual de Instalação para Microsoft SQL Server Supporte A suite BIS foi testada e é suportada nos seguintes ambientes e produtos: BIS Client Components:

Leia mais

Oracle SQL Developer

Oracle SQL Developer BDDAD Bases de Dados Oracle SQL Developer Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/30 SQL Developer Sumário Introdução Instalar Abrir Ligar à BD no Servidor Oracle SQL Worksheet Editar SQL Executar SQL

Leia mais

Microsoft.NET. Grupo: Eduardo Getassi Maicon Lima Rodrigo Cunha

Microsoft.NET. Grupo: Eduardo Getassi Maicon Lima Rodrigo Cunha Microsoft.NET Grupo: Eduardo Getassi Maicon Lima Rodrigo Cunha Microsoft.NET Introdução ao CLR.NET WebServices FrameWork.NET MVC WebForms Linguagens.NET Versões Visual Studio ADO.NET INTRODUÇÃO Metodologia

Leia mais

CONSULTAS AO SQL SERVER 2005 ATRAVÉS DOS OBJETOS VISICONX

CONSULTAS AO SQL SERVER 2005 ATRAVÉS DOS OBJETOS VISICONX CONSULTAS AO SQL SERVER 2005 ATRAVÉS DOS OBJETOS VISICONX Dando continuidade ao tema do nosso último faça-fácil (Boletim Aquarius Automação Industrial Ed.9), nessa edição falaremos sobre os controles VisiconX

Leia mais

Sistemas Empresariais Integrados

Sistemas Empresariais Integrados Departamento de Engenharia Informática 2010/2011 Sistemas Empresariais Integrados Tutorial de Web Services 2º semestre Pretende-se desenvolver um Web Service que converte valores de temperatura de graus

Leia mais

Data Transformation Services (DTS) por Anderson Ferreira Souza

Data Transformation Services (DTS) por Anderson Ferreira Souza Data Transformation Services (DTS) por Anderson Ferreira Souza O Sql Server possui um recurso extremamente poderoso que é muito pouco utilizado pelos administradores e programadores. Com certeza, sendo

Leia mais

Guião de Introdução ao Eclipse IDE Índice

Guião de Introdução ao Eclipse IDE Índice Índice 1. Introdução... 2 1.1. O que é um ambiente de desenvolvimento (IDE)?... 2 1.2. Visão geral sobre o Eclipse IDE... 2 2. Iniciar o Eclipse... 3 2.1. Instalação... 3 2.2. Utilizar o Eclipse... 3 3.

Leia mais

Dim formulário As Object formulário = Me Me.Text = "Título"

Dim formulário As Object formulário = Me Me.Text = Título 1.1.1 OBJECT As variáveis do tipo Object representam referências a objectos alojados na memória, em endereços reservados. A partir do momento em que atribuímos um objecto a uma variável deste tipo, podemos

Leia mais

MySQL. Transacções em MySQL

MySQL. Transacções em MySQL (QJHQKDULDGH6RIWZDUH MySQL 2001, 2004 (QJHQKDULD GH6RIWZDUH Departamento de Engenharia Informática Instituto Superior Técnico 1 Transacções em MySQL Criar um directório InnoDB, com os subdirectórios data

Leia mais

Resolvendo objeto-relacional impedance mismatch com hibernate

Resolvendo objeto-relacional impedance mismatch com hibernate Resolvendo objeto-relacional impedance mismatch com hibernate August 7, 2013 Sumário I 1 Introdução 2 3 4 Sumário II 5 Contexto Mapeamento Objeto-Relacional (ORM) é uma técnica de programação para converter

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Solutions for Information Technologies. BIS-Navegador. IBM DB2 UDB v8.x

Solutions for Information Technologies. BIS-Navegador. IBM DB2 UDB v8.x Solutions for Information Technologies BIS-Navegador Manual de Instalação em IBM DB2 UDB v8.x Supporte A suite BIS foi testada e é suportada nos seguintes ambientes e produtos: BIS Client Components: Operating

Leia mais

Forms Authentication em ASP.NET

Forms Authentication em ASP.NET Forms Authentication em ASP.NET Em muitos sites web é necessário restringir selectivamente o acesso a determinadas áreas, ou páginas, enquanto para outras páginas pode permitir-se acesso livre. ASP.NET

Leia mais

Aula 1 Acesso a Banco de Dados

Aula 1 Acesso a Banco de Dados Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados Prof. Josenildo Silva jcsilva@ifma.edu.br Introdução O JDBC (Java Database Connectivity) foi criado com o intuito de fornecer aos programadores

Leia mais

Lógica de Negócio e Acesso a dados. Parte 2.2

Lógica de Negócio e Acesso a dados. Parte 2.2 Lógica de Negócio e Acesso a dados Parte 2.2 Estilos arquitecturais Orientado à tabela Table Module Table Data Gateway BLL DAL Orientado aos objectos Domain Model Active Record Data Mapper BLL DAL BLL

Leia mais

Laboratório 3. Base de Dados II 2008/2009

Laboratório 3. Base de Dados II 2008/2009 Laboratório 3 Base de Dados II 2008/2009 Plano de Trabalho Lab. 3: Programação em Transact-SQL MYSQL Referências www.mysql.com MICROSOFT SQL SERVER - Procedimentos do Lado do Servidor (Stored Procedures)

Leia mais

Solutions for Information Technologies. BIS-Navegador. Oracle

Solutions for Information Technologies. BIS-Navegador. Oracle Solutions for Information Technologies BIS-Navegador Manual de Instalação em Oracle Supporte A suite BIS foi testada e é suportada nos seguintes ambientes e produtos: BIS Client Components: Operating System:

Leia mais

1. FILTRAR OS DADOS ATRAVÉS DE FORMULÁRIO (FILTER BY FORM)

1. FILTRAR OS DADOS ATRAVÉS DE FORMULÁRIO (FILTER BY FORM) Nesta aula prática iremos usar uma base de dados fictícia já preenchida com o nome Espaço Projecto - InfantJaundice2006.accdb. Este ficheiro foi criado pelo curso Data Management for Research, 2005, UCSF.

Leia mais

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no

Leia mais

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Introdução à Engenharia da Computação. Banco de Dados Professor Machado Introdução à Engenharia da Computação Banco de Dados Professor Machado 1 Sistemas isolados Produção Vendas Compras Banco de Dados Produtos... Banco de Dados Produtos... Banco de Dados Produtos... Desvantagens:

Leia mais

PROGRAMA. Objectivos Gerais :

PROGRAMA. Objectivos Gerais : PROGRAMA ANO LECTIVO : 2005/2006 CURSO : ENGENHARIA MULTIMÉDIA ANO: 2.º DISCIPLINA : SISTEMA DE GESTÃO DE BASE DE DADOS DOCENTE RESPONSÁVEL PELA REGÊNCIA : Licenciado Lino Oliveira Objectivos Gerais :

Leia mais

DESENVOLVIMENTO DE SOFTWARE AULA 1

DESENVOLVIMENTO DE SOFTWARE AULA 1 DESENVOLVIMENTO DE SOFTWARE AULA 1 CAMPUS SANTO ANDRÉ CELSO CANDIDO SEMESTRE 2014 1 Características da Plataforma.NET A plataforma.net Framework 4.0 (.NET 4.0) é uma plataforma de softwares que fornece

Leia mais

Aplicabilidade: visão geral

Aplicabilidade: visão geral CURSO BÁSICO SAXES 2 Aplicabilidade: visão geral BI Comércio Indústria nf-e Serviços Software house Enterprise Business Bus Banco financeiro Instituição Sindicato ERP html Casos 3 6 Customização: importação

Leia mais

Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo

Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo Departamento de Engenharia Informática 2012/2013 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

A interface IDataSource retorna dados em formato tabular e disponibiliza apenas dois métodos: GetView e GetViewNames. O primeiro,

A interface IDataSource retorna dados em formato tabular e disponibiliza apenas dois métodos: GetView e GetViewNames. O primeiro, 3 1CONTROLOS DATA SOURCE A plataforma ASP.NET disponibiliza um conjunto de controlos, designados de data source, que são capazes de fornecer dados que podem ser consumidos por outros, designados por data

Leia mais

Sumário 1 0.1 Introdução 1 0.2 Breve História da Linguagem SQL l 0.3 Características da Linguagem SQL 3 0.4 A Composição deste Livro 3

Sumário 1 0.1 Introdução 1 0.2 Breve História da Linguagem SQL l 0.3 Características da Linguagem SQL 3 0.4 A Composição deste Livro 3 ÍNDICE o -INTRODUÇÃO Sumário 1 0.1 Introdução 1 0.2 Breve História da Linguagem SQL l 0.3 Características da Linguagem SQL 3 0.4 A Composição deste Livro 3 0.5 Sistemas Utilizados 6 0.5.1 Access 2003 (Microsoft)

Leia mais

Microsoft Access. No Access, existem vários tipos de objectos: Tabelas. Consultas. Formulários Relatórios Macros Módulos

Microsoft Access. No Access, existem vários tipos de objectos: Tabelas. Consultas. Formulários Relatórios Macros Módulos É um SGBD do tipo relacional para a utilização em windows. Ao abrirmos o Access, podemos efectuar várias operações: abrir uma base de dados existente, ou então criar uma nova base de dados. Se criarmos

Leia mais

Tutorial C# - ADO.NET

Tutorial C# - ADO.NET Tutorial C# - ADO.NET Date : 31 de Março de 2009 Olá a todos, hoje vamos falar de ADO.NET e dos elementos que o compõem. E vamos começar a desenvolver a nossa aplicação de Despesas pessoais que irá ter

Leia mais

Consultas (Queries) ou Interrogações

Consultas (Queries) ou Interrogações Consultas (Queries) ou Interrogações Principal finalidade das interrogações: Extracção, manipulação (inserção, alteração e remoção) e definição de dados. As interrogações mais comuns destinam-se a pesquisar

Leia mais

Acesso a Dados ADO.NET

Acesso a Dados ADO.NET Acesso a Dados ADO.NET ADO.NET Data Source Controls Um control Data Source é um objecto no qual se pode declarativamente definir: Informação sobre a conexão com a base de dados Informação de pesquisa,

Leia mais

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br JSP (Java Server Pages) - JavaServer Pages (JSP) - Tecnologia de programação serverside - Permite

Leia mais

Parte I Princípios básicos do Microsoft.NET Framework

Parte I Princípios básicos do Microsoft.NET Framework Sumário Parte I Princípios básicos do Microsoft.NET Framework Capítulo 1 A arquitetura da plataforma de desenvolvimento.net Framework.............................. 35 Compilando código-fonte em módulos

Leia mais

JAVA 14 ODBC / JDBC Aceder a Bases de Dados através da Internet. Vitor Vaz da Silva

JAVA 14 ODBC / JDBC Aceder a Bases de Dados através da Internet. Vitor Vaz da Silva JAVA 14 ODBC / JDBC Aceder a Bases de Dados através da Internet Vitor Vaz da Silva Ter tudo à mão?! Saber tudo?! Saber onde encontrar?! Saber quem sabe?! As Bases de Dados ajudam a guardar dados e informação

Leia mais